Severe regression in wine startup latencies
Ben Peddell
klightspeed at netspace.net.au
Mon Aug 29 22:05:25 CDT 2011
On 29/08/2011 2:37 AM, Alan W. Irwin wrote:
> While I am doing those additional investigations, please consider
> the question of why there is a huge difference between built-in and
> executable latency for MSYS bash commands under wine. To start
> that investigation it would be good to compare the wine results
> for those two cases with the Windows results for those two cases.
> (I assume the two time results for built-in versus executable will
> be fairly similar in the Windows case, but that assumption needs to
> be checked.) I don't have access to Windows myself. Anybody up for
> doing that simple test and reporting the results back here? The
> automatic MinGW/MSYS installer at
> http://sourceforge.net/projects/mingw/files/Automated MinGW
> Installer/mingw-get-inst/ makes it easy to install the relevant
> MinGW/MSYS software on both wine and Windows.
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 execute a program.
* make.exe takes about 8.8ms to execute a program.
* cmd.exe takes about 5.9ms to execute a program.
Under wine 1.2.1 on linux 2.6.38 on an AMD 5050e:
* bash.exe takes about 236ms to execute a program.
* bash.exe takes about 182ms to execute ${MINGW}/bin/true.
* make.exe takes about 77ms to execute a program.
* make.exe takes about 25ms to execute ${MINGW}/bin/true.
* wine-cmd takes about 9ms to execute a program.
Under wine-git on linux 2.6.38 on an AMD 5050e:
* bash.exe takes about 190ms to execute a program.
* bash.exe takes about 147ms to execute ${MINGW}/bin/true.
* make.exe takes about 71ms to execute a program.
* make.exe takes about 20ms to execute ${MINGW}/bin/true.
* wine-cmd takes about 9ms to execute a program.
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. Times have actually
improved between 1.2 and current.
-- Ben Peddell IT Support Bowen, Collinsville, Proserpine and Home
Hill Catholic schools http://klightspeed.killerwolves.net/
More information about the wine-devel
mailing list