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: Slow/sluggish response ("system" task at 50%)


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


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