[Wine] Speed/latency issues for development in a Wine environment
Alan W. Irwin
irwin at beluga.phys.uvic.ca
Sat Jun 12 16:10:31 CDT 2010
On 2010-06-11 18:09-0700 Alan W. Irwin wrote:
The previous timing numbers were done with wine-1.1.42. Following a
suggestion made off-list to me, I have built wine-1.2-rc3 today (with
CFLAG=-O3) and immediately noticed the start-up latency for simple commands
(e.g., cmake --version) was reduced from about 0.25 s to about 0.15 s. I
don't know how the previous Debian wine-1.1.42 packages were optimized so
that difference may just be due to an optimization difference or an actual
improvement in the Wine code from 1.1.42 to 1.2-rc3. However, to see how -O3
optimized wine-1.2-rc3 does with the full tests, I have redone my timing
tests for I. (cmake), II (make install), and III (make install latency) and
the following reductions have been observed.
> Wine I.
> wine at raven> time wine cmake -G "MinGW Makefiles" \
> "-DCMAKE_INSTALL_PREFIX=z:/home/wine/cmake/install1" \
> z:/home/software/cmake/cmake-2.8.1_patched/ >& cmake.out
>
> real 14m17.124s
==>
real 8m18.041s
> Wine II.
>
> wine at raven> time wine mingw32-make install >& make_install.out
>
> real 20m13.421s
==>
real 12m4.198s
> Wine III.
> wine at raven> time wine mingw32-make install >& make_install.out1
>
> real 1m39.018s
==>
real 0m51.045s
For reference here are the corresponding Linux numbers which are still
much better than the corresponding Wine-1.2-rc3 results.
> Linux I.
>
> wine at raven> time cmake -G "Unix Makefiles" \
> "-DCMAKE_INSTALL_PREFIX=/home/wine/cmake/install_linux" \
> /home/software/cmake/cmake-2.8.1_patched/ >& cmake.out
>
> real 0m34.015s
> Linux II.
>
> wine at raven> time make install >& make_install.out
>
> real 2m12.805s
> Linux III.
>
> wine at raven> time make install >& make_install.out1
>
> real 0m0.869s
To summarize these findings, it appears that changes in startup latency for
simple commands strongly correlates with timing results for build steps I,
II, and III on Wine. This makes sense since we know that several thousand
commands are run for, e.g., build step II so startup latency of hundreds of
milliseconds per command must be a real build performance killer.
So what can be done to reduce the simple startup latency from the current
~150 ms on Wine down much closer to the Linux startup latency for the same
commands which is typically 1 ms? Simple commands requiring 150 ms to start
must have an awful lot of extra start baggage. Is all that baggage really
needed for command-line commands such as cmake, mingw32-make, gcc, etc.?
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); PLplot scientific plotting software
package (plplot.org); 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
__________________________
More information about the wine-users
mailing list