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

Gene Smith gds@chartertn.net
Thu Jun 25 01:53:00 GMT 2009


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.
> 
Larry,
Currently I have 3 embedded projects buildable with cygwin. 2 of them 
are slow with cygwin make and ok with a mingw make (winavr's or 
codesourcery's cs-make). However, with the 3rd project I see no 
difference in speed between "cs-make clean all" and "make clean all"! 
This project has no recursive make calls, $(MAKE).

But on the other two that have a speed difference, if I try to run 
cygwin make twice in a row, "make clean ; make", I see the error
.dep/main.0.d:1 *** multiple target patterns. Stop.

I have to rm .dep/* to fix it. (These are generated dependency files.)

I think I may have seen a reference to this as a known problem with 
cygwin's make but don't know if it is related to speed issue in any way. 
Just thought I would point this out.

Also, I might point out that the two projects with speed difference, one 
has recursive makes while the other does not.


--
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