http://bugs.winehq.org/show_bug.cgi?id=13606
Summary: msys is *incredibly* slow Product: Wine Version: 1.0-rc3 Platform: Other OS/Version: other Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: kirr@landau.phys.spbu.ru
When running configure of a program in msys under wine the whole process is incredibly slooooow compared to the same under Windows.
I've tracked the problem down to following:
$ export WINEPREFIX=`pwd`/msystest $ wineboot -i $ cd msystest/drive_c $ wget -c http://downloads.sourceforge.net/mingw/msysCORE-1.0.11-2007.01.19-1.tar.bz2 $ mkdir msys $ cd msys $ tar xfj ../msysCORE-1.0.11-2007.01.19-1.tar.bz2 $ wineconsole bin/sh.exe --login -i
--- in msys console ---
# time for i in 1 2 3 4 5; do echo $i; done ... real 0m0.021s
# time for i in 1 2 3 4 5; do /bin/echo $i; done ... real 0m3.396s
i.e. each fork of /bin/echo takes approximately almost *1* second!
On Windows both examples runs fast, although /bin/echo case is slightly slower, but still speed ratio is not *that* big.
Thanks beforehand.
http://bugs.winehq.org/show_bug.cgi?id=13606
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |http://downloads.sourceforge | |.net/mingw/msysCORE-1.0.11- | |2007.01.19-1.tar.bz2 Severity|normal |trivial Keywords| |download, source
http://bugs.winehq.org/show_bug.cgi?id=13606
Vadim Godunko vgodunko@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |vgodunko@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=13606
Jeff Zaroyko jeffz@jeffz.name changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #1 from Jeff Zaroyko jeffz@jeffz.name 2008-11-08 05:05:04 --- Wine 1.1.8, confirming.
-- Windows: time for i in 1 2 3 4 5; do /bin/echo $i; done real 0m0.231s user 0m0.020s sys 0m0.140s
-- Wine 1.1.8: time for i in 1 2 3 4 5; do /bin/echo $i; done real 0m1.767s user 0m0.760s sys 0m0.260s
http://bugs.winehq.org/show_bug.cgi?id=13606
Luke Kenneth Casson Leighton lkcl@lkcl.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |lkcl@lkcl.net
--- Comment #2 from Luke Kenneth Casson Leighton lkcl@lkcl.net 2009-01-09 11:45:53 --- *lol* gosh - you get that echo test completing in 1.7 seconds? you're _really_ lucky :) i don't have "time" installed in my msys installation, but that was ok, because i had such a long time to wait that i was able to flip to an xterm and run date, twice.
time difference: _ten_ seconds.
i'm currently running a configure script (python 2.5) and it is quite literally writing out one line of output every 20-30 seconds. to get the first line of output from configure took well over two minutes.
under windows, people are instructed to "go away have a beer" or something when running configure - running under msys / wine i anticipate this _literally_ taking all night.
surely something can be done about this?
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #3 from Luke Kenneth Casson Leighton lkcl@lkcl.net 2009-01-09 12:15:36 --- an strace of running wine cmd and then msys.bat shows that dozens of fonts are being loaded. virtually every single font in existence on my system - in both the wine windows subdirectory and /usr/share/fonts - is being loaded up.
X11 is loaded up and initialised: X11 locale files are read.
the whole strace is punctuated with significant registry reading (in DCE/RPC format).
libiconv.
X11 compose.
X11 keyboard.
if you cut out both those things alone - X11 and font loading - that would drastically reduce the amount of unnecessary CPU usage.
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #4 from Jeff Zaroyko jeffz@jeffz.name 2009-01-09 17:23:45 --- strace isn't very useful for deciding where time is being spent. use oprofile.
http://bugs.winehq.org/show_bug.cgi?id=13606
Damjan Jovanovic damjan.jov@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |damjan.jov@gmail.com
--- Comment #5 from Damjan Jovanovic damjan.jov@gmail.com 2009-01-10 04:52:59 --- Hello
I didn't find oprofile very helpful, but I did find something:
$ nohup notepad & (leave open) $ cd msys $ time for i in 1 2 3 4 5 6 7 8 9 10; do ls; done real 0m0.206s user 0m0.008s sys 0m0.052s $ time for i in 1 2 3 4 5 6 7 8 9 10; do wine bin/ls.exe; done real 0m3.423s user 0m1.436s sys 0m0.672s
You'd think general process startup in wine is taking very long, but then you compile and run this:
---snip--- #include <stdio.h>
int main(int argc, char **argv) { printf("hello world\n"); } ---snip---
time for i in 1 2 3 4 5 6 7 8 9 10; do wine /tmp/helloworld.exe; done real 0m0.579s user 0m0.072s sys 0m0.096s
Obviously not.
Let's take another example: $ time for i in 1 2 3 4 5 6 7 8 9 10; do wine bin/true.exe; done real 0m3.702s user 0m1.412s sys 0m0.692s
But bin/true.exe does almost nothing.
What does msys do that takes so long in wine?
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #6 from Kirill K. Smirnov lich@math.spbu.ru 2009-01-11 08:07:53 --- Created an attachment (id=18642) --> (http://bugs.winehq.org/attachment.cgi?id=18642) WINDEBUG=relay wine hello_world.exe
relay log of simple hello world executable - 12Kb
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #7 from Kirill K. Smirnov lich@math.spbu.ru 2009-01-11 08:08:36 --- Created an attachment (id=18643) --> (http://bugs.winehq.org/attachment.cgi?id=18643) WINDEBUG=relay wine true.exe
relay log of msys true.exe - 90Kb!!!
http://bugs.winehq.org/show_bug.cgi?id=13606
Kirill K. Smirnov lich@math.spbu.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |lich@math.spbu.ru
--- Comment #8 from Kirill K. Smirnov lich@math.spbu.ru 2009-01-11 08:17:20 --- As I can see in attached logs, msys true.exe does lots of unnecessary things: threading, registering window messages, which leads to loading user32.dll and winex11.dll.
Also I've noticed interesting thing: when I run $ WINEDEBUG=process wine sh.exe --login -i
and in msys console (several times):
$ ls /
I can see in xterm, that every time sh.exe creates one more sh.exe process and only then executes ls.exe. This fork() emulation (or what else it is) consumes some time too.
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #9 from Austin English austinenglish@gmail.com 2010-07-18 06:44:25 --- http://downloads.sourceforge.net/project/mingw/MSYS/BaseSystem/msys-1.0.11/M...
Still in 1.2.
http://bugs.winehq.org/show_bug.cgi?id=13606
Kirill Smelkov kirr@landau.phys.spbu.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |performance
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #10 from Kirill Smelkov kirr@landau.phys.spbu.ru 2011-02-12 16:44:27 CST --- Created an attachment (id=33268) --> (http://bugs.winehq.org/attachment.cgi?id=33268) 0001-msys.dll-Don-t-pull-user32.dll-friends-just-to-detec.patch
It turned out msys.dll pulls in user32.dll just to see whether or not to use AltGr as META...
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #11 from Luke Kenneth Casson Leighton lkcl@lkcl.net 2011-02-12 17:06:43 CST --- good find! well done kirill
http://bugs.winehq.org/show_bug.cgi?id=13606
--- Comment #12 from Kirill Smelkov kirr@landau.phys.spbu.ru 2011-05-05 03:04:21 CDT --- Created an attachment (id=34485) --> (http://bugs.winehq.org/attachment.cgi?id=34485) 0001-bash-Don-t-load-user32.dll-for-every-shell-process.patch
Also bash.exe was pulling user32.dll in for clipboard's paste to work in readline. Delay loading user32.dll for bash.exe made shell scripts almost 2x faster under wine.
http://bugs.winehq.org/show_bug.cgi?id=13606
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #13 from Anastasius Focht focht@gmx.net 2012-05-03 05:25:03 CDT --- Hello,
if I read comment #10 - 12 correctly this ought to be fixed outside of Wine (in msys project). Initial bug reporter is this implemented in msys? This bug might be closed, there is not much Wine can do.
Regards
http://bugs.winehq.org/show_bug.cgi?id=13606
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |UPSTREAM
--- Comment #14 from Austin English austinenglish@gmail.com 2012-05-03 12:16:52 CDT --- (In reply to comment #13)
Hello,
if I read comment #10 - 12 correctly this ought to be fixed outside of Wine (in msys project). Initial bug reporter is this implemented in msys? This bug might be closed, there is not much Wine can do.
Regards
UPSTREAM.
http://bugs.winehq.org/show_bug.cgi?id=13606
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED CC| |wylda@volny.cz
--- Comment #15 from Wylda wylda@volny.cz --- Closing.
http://bugs.winehq.org/show_bug.cgi?id=13606
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|CLOSED |RESOLVED
--- Comment #16 from Wylda wylda@volny.cz --- Based on http://bugs.winehq.org/show_bug.cgi?id=26630#c13 my closing was wrong, as i didn't check the status at upstream...
Reverting back CLOSED to RESOLVED.
https://bugs.winehq.org/show_bug.cgi?id=13606
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #17 from Austin English austinenglish@gmail.com --- Closing.
https://bugs.winehq.org/show_bug.cgi?id=13606
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|CLOSED |RESOLVED
--- Comment #18 from Austin English austinenglish@gmail.com --- This was inadvertently caught up in my unclosed bugs filter. NOTOURBUG should only be closed when fixed upstream.
Setting back to RESOLVED NOTOURBUG.
Sorry for the spam.