Slow/sluggish response ("system" task at 50%)

Edward Lam edward@sidefx.com
Wed Jun 24 22:08:00 GMT 2009


Larry Hall (Cygwin) wrote:
 > Interesting.  I'm not sure why using Cygwin's 'make' would slow things
 > down dramatically when running from a Cygwin terminal or shell.  I can

Note that cygwin's make is just plain slower that mingw's make to begin 
with. I'm not quite sure I can explain the ~25 times speed difference 
that Gene experiences but I can definitely vouch for at least a ~7 times 
speed difference (which I think it primarily due to forking).

Here's a speed test taken from an old thread on the cygwin mailing list. 
I did this test just right now with virtually no CPU usage on the same 
machine (WinXP SP2 x64, Intel Core i7 2.66 GHz):

(MINGW)
$ uname -a
MINGW32_NT-5.2 SEOUL 1.0.11(0.46/3/2) 2009-05-23 19:33 i686 Msys

$ time -p for ((i=1; i<100; i++)); do var=$(echo $i | tr [a-z] [A-Z]); done
real 1.51
user 0.58
sys 0.82

(CYGWIN 1.7)
$ uname -a
CYGWIN_NT-5.2-WOW64 seoul 1.7.0(0.210/5/3) 2009-06-18 12:51 i686 Cygwin

$ time -p for ((i=1; i<100; i++)); do var=$(echo $i | tr [a-z] [A-Z]); done
real 10.45
user 0.76
sys 1.53

Regards,
-Edward

Larry Hall (Cygwin) wrote:
> Gene Smith wrote:
> 
> <snip>
> 
>> Going back to beta-1.7 default install that ran fast I noticed that it 
>> was actually using a mingw32 version of "make" from winavr project and 
>> not the cygwin "make". The default cygwin install does not include 
>> make. When I load the cygwin make package and the build uses it (since 
>> cygwin puts its paths ahead of windows path) the build slows way down. 
>> If I remove make from cygwin's /bin it speeds back up (since using the 
>> mingw32 make).
>>
>> The build referred to above uses a toolchain built for mingw32, not 
>> cygwin's gcc. So as long as make is also built for mingw32 the build 
>> is fast when run from cygwin terminal or dos window. With make being 
>> the cygwin version, the build is slow in all cases.
>>
>> What does this mean? Am I doing something illegal mixing cygwin and 
>> mingw programs?
> 
> Interesting.  I'm not sure why using Cygwin's 'make' would slow things
> down dramatically when running from a Cygwin terminal or shell.  I can
> see there being some overhead if that's the only Cygwin process you're
> running, since there would be a Cygwin initialization cost to start 'make'
> if there were no other Cygwin processes running at the time.  I very much
> doubt that this would account for the dramatic slow-down you've reported.
> So while certainly there's an issue here, it seems like the work-around
> you've found is viable.  And it does make more sense than mixing and
> matching Cygwin and Mingw.
> 
> Are you able to reproduce this problem for any kind of package?  It
> might be helpful to know that building package or tarball 'foo' 
> demonstrates
> the problem.
> 


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



More information about the Cygwin mailing list