Mail Archives: cygwin/2006/12/13/13:58:51
Hi,
I'm trying to figure out why Cygwin build things so much slower on one
computer I have. We're talking about more than 3 times slower on a
computer that ought to be a bit faster (Athlon64 at 2.2-2.4 GHz,
compared to a Pentium M at 1.8 GHz).
After digging into strace logs a bit, it seems like the Athlon is a bit
faster at first, but after a while (after creating a bunch of child
processes?), things change, making it a bit slower. Mostly not too much,
around 10-20% or so, but sometimes about 100%. And there's one step
where this could make things really bad. During startup of a program,
lines like the following are displayed (some whitespace editing done):
59 294 [main] make 2936 child_copy: dll data -
hp 0x6BC low 0x61100000, high 0x61104BA0, res 1
157457 157751 [main] make 2936 child_copy: dll bss -
hp 0x6BC low 0x6113F000, high 0x611483E0, res 1
205 157956 [main] make 2936 child_copy: user heap -
hp 0x6BC low 0x680000, high 0x6A0000, res 1
25 157981 [main] make 2936 child_copy: done
Now, that "dll bss" copy time fluctuates quite a bit, so in one case
(from the Athlon computer) the time is 32146275... (It might be worth
mentioning that the log in question is some 35 MB. Maybe that can throw
the timing off a bit?)
Any ideas what could cause this slowdown? Could the child_copy part be
involved? Since it involves the Win32 functions
ReadProcessMemory/WriteProcessMemory, I imagine it could impact
performance noticeably, in unpredictable ways (since it would need to
mess around with memory protection stuff).
One thing that suggests something strange is going on is the fact that
if I have a background process running (like Folding AT Home (which doesn't
affect the build time, btw)), the CPU load drops noticably (according to
Process Explorer), from 100% to something like 75-85%.
I've tried disabling anti-virus, firewalls, background processes and the
like, but it has little to no impact on the build times.
Magnus
--
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/
- Raw text -