This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Cygwin Slow on XP







> Date: Sun, 9 Nov 2008 18:19:58 +0100
> From: v.haisman@sh.cvut.cz
> To: cygwin@cygwin.com
> Subject: Re: Cygwin Slow on XP
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> 
> tomotomo wrote:
>> The program calculates a factorial of a number. e.g. factorial 11 =
>> 11*10*9*8*7*6...*1
> Thanks, I know what is factorial :)

I would point out that extraneous code can be a big deal and in fact the factorial
may not even be the speed limit here- we need to see the code. Certainly you
expect the emulation layer to slow down some stuff and in the past I'd been surprised
at how slow std::string functions were and console IO could be terrible. If you could
profile the code you may be surprised where the time is going.
 
However, order-of-magnitude comparisons on self-contained computational code 
( where the compiler generated code is using most of the CPU time ) hasn't been
all that surprising in my cygwin experience - you may be able to do better with the fully optimized intel
compiler but an order of magnitude? 
 
 
> 
>> It's programmed in C++.
>> I'm using Cygwin (GNU) C++ compiler to compile it. 
> The 3.4.x version of GCC on Cygwin suffers performance penalty from SJLJ
> implementation of exceptions that it uses. It could be that you are
> being bitten by it. But without seeing the real code and the real
> command line that you have used to compile the test executable, it is
> hard to tell what is making it so slow.
> 
 
If you are intentionally trying to make a slow case for testing, note that floating
point exceptions can be a big deal- actually throwing one irrespective of how
the compiler handles it, can be important. If you start generating floating point
over or under flows, even at low frequency, these can be performance limiting
but this is due to the CPU, not the compiler per se. The compiler has some options
on how it handles these, but the fact that they occur is the real problem
Haven't thought about integeer handling before but you can look here,
 
http://www.google.com/search?hl=en&q=site%3Aintel.com+integer+exception+performance
 
 

> Again, you will have to provide more information.
> 
> - --
> VH
> 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.9 (FreeBSD)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
> 
> iFYEAREIAAYFAkkXG70ACgkQhQBMvHf/WHn0hQDcDoSm5pFW64ZMcBIJe/5V1hZO
> 0JjPtkE4PsE5iADfW7cXdHw8Bo+DnbhA5EXhvYhPSVy7vb9THZ9V/Q==
> =4nRA
> -----END PGP SIGNATURE-----
> 
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Problem reports: http://cygwin.com/problems.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
> 
_________________________________________________________________
See how Windows® connects the people, information, and fun that are part of your life
http://clk.atdmt.com/MRT/go/119463819/direct/01/

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]