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]

R: Cygwin 1.7.7 fork/exec performance MUCH slower than 1.5.25


--- Gio 30/9/10, SZABÓ Gergely  ha scritto:

> Hello,
> 
> we have a Cygwin-based build system for an embedded
> project.
> Build performance has deteriorated terribly since we
> upgraded to 1.7.x from 1.5.25.
> 
> I've created 3 shell-scripts to benchmark 1.5.25 and 1.7.7
> against each other.
> - null? ? : read file "inp" line by line, write
> to /dev/null.
> - builtin : write each line to file "out", only
> bash-builtins used (no fork)
> - fork? ? : do some substitution for each line
> with sed (huge number of forks)
> 
> Results:
> - null? ? : 1.7.7 is about 5 times faster
> - builtin : 1.7.7 is slightly faster
> - fork? ? : 1.7.7 is 5 times SLOWER !!!
> 
> All measurements were made with the "time" command.
> The attached results.txt lists the "real" times.
> 
> I've also attached the 3 shell-scripts (null, builtin,
> fork).
> Input file "inp" is also attached.
> 
> Also see the cygcheck_xxx.out files for both Cygwin
> versions.
> 
> Some notes: 
> both cygwin versions use the same /home, mounted from
> "D:\Documents and Settings",

I bet is a network/acl issues. 
I suggest to create a real home on "/home"

> so all user-level config-files are shared between the
> Cygwin versions.
> 
> Cygwin 1.7.7 is basically unusable at the moment.
> Any ideas why it's so much slower at spawning processes? Or
> is it the pipes? Am I doing something wrong?
> 
> And more importantly: is there an easy way to fix this?
> 
> Thanks in advance for any help!
> 
> Best regards
> Gergely Szabó
> 

testing on /tmp/benchmark with XPS P2

cygwin 1.7.8s 20100924

$ time ./fork

real    1m12.856s
user    0m52.480s
sys     1m6.423s


cygwin 1.5.25-15

$ time ./fork

real    1m7.969s
user    0m52.992s
sys     1m11.583s


So no difference

Marco






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