Hi Ben:
Thanks for your further tests.
On 2011-08-30 08:20+1000 Ben Peddell wrote (but then later forwarded to list so I am repeating my off-list reply to the list as well):
Some things I have seen while investigating:
I created a program which had a startup that immediately called ExitProcess to attempt to eliminate most of the initialization of the process being forked.
On Windows 7 x64 SP1 on an AMD 5050e: bash.exe takes about 22.2ms to fork. make.exe takes about 8.8ms to fork. cmd.exe takes about 5.9ms to fork.
Under wine 1.2.1 on linux 2.6.38 on an AMD 5050e: bash.exe takes about 236ms to fork nothing, and 182ms to fork /bin/true. make.exe takes about 77ms to fork nothing, and 25ms to fork /bin/true. wine-cmd takes about 9ms to fork nothing.
Under wine-git on linux 2.6.38 on an AMD 5050e: bash.exe takes about 190ms to fork nothing, and 147ms to fork /bin/true make.exe takes about 71ms to fork nothing and 20ms to fork /bin/true. wine-cmd takes about 9ms to fork nothing.
Just out of curiosity do you have any explanation of why /bin/true provided faster make.exe results than your quick-exiting programme both for wine-1.2.1 and wine-git?
Even the native bash takes twice as long to fork as make - 1.1ms vs 0.5ms.
It looks to me like the fork emulation in MSYS is encountering a bottleneck, and not actual process creation.
I assume you meant "encountering a _wine_ bottleneck" since clearly above your MSYS tests of make.exe and bash.exe on Windows don't have the large startup latencies you encounter with wine-1.2 and wine-git.
How does the MSYS version of make (make.exe that you tried above) compare in this regard with the MinGW version of make (MinGW/bin/mingw32-make.exe) that specifically excludes everything to do with MSYS? My guess is you will encounter a similar wine bottleneck for this case as well, but it is worth verifying that.
And now you have done a clean comparison with the same software stack it is clear that wine-git somewhat reduces the bottleneck compared to wine-1.2. Thus, I expect my own planned clean comparisons to show the same. So I have changed the subject line appropriately.
Now, if someone could just figure out what the wine bottleneck is that is causing these severe start-up latencies for Windows applications....
Alan __________________________ Alan W. Irwin
Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca).
Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________
Linux-powered Science __________________________