cygwin fork()
Fri Sep 1 10:49:00 GMT 2006

On Fri, Sep 01, 2006 at 11:12:59AM +0100, Dave Korn wrote:
> On 01 September 2006 11:02, clayne@anodized.PCYMTNQREAIYA wrote:
> > Is it just me or is cygwin fork(), or a support syscall underneath,
> > terribly slow for some reason? 
>   Some reason == "lack of O/S support".

Basically, this is what I'm talking about:

Opteron 180, fast disks, ran make clean, make 4 times or so to keep the
disk/mem/cpu caches hot; no extraneous system usage going on:

$ ( make clean; time make -j1 ; make clean; time make -j8 ) >/dev/null

real    2m20.062s
user    0m13.252s
sys     0m37.139s

real    0m45.654s
user    0m15.968s
sys     0m49.201s

That's a huge difference, and it's only like 6300 lines of code!  I've
narrowed it down to something between 20060309 and 20060313 snapshots. Every
snapshot since 20060313 has had this incredible slowness issue with fork().

The dual-coreness isn't going to make a huge difference here as I can get
the same factor of speed up just by using 20060309's dll and the exact
same make jobs. Nor is it a case of minor differences in times. I've tried
different versions of libtool, gcc, etc. Everything just goes back to
20060309 vs 20060313.


Unsubscribe info:
Problem reports:

More information about the Cygwin mailing list