Performance-Tipp für Linux und Mac OS X

WINE durch Abschaltung von Fehlermeldungen beschleunigen

WINE unterstützt inzwischen ein breites Spektrum an Windows-Anwendungen, doch gerade bei rechenintensiven Programmen kann es oft zu Performance-Problemen kommen. Auch die Installation nativer Windows-DLLs mit winetricks schafft in manchen Fällen keine Abhilfe.

Lösung: Versucht ein Programm, noch nicht vollständig implementierte Schnittstellen zu verwenden, so quittiert WINE den Zugriff mit einer Warnmeldung. Glücklicherweise war das Programmiererteam realistisch genug, solche Lücken zu erwarten und sie ausreichend abzufedern. Offensichtliche Fehler im Programm sind daher selten, doch bei übermäßigem Zugriff auf solche Funktionen überfluten die Meldungen die Konsole. Die Folge sind oft massive Performanceprobleme.

WINE mit maximalen Ausgabedetails: Die VM bricht nach wenigen Sekunden zusammen, daher der untypische Programmaufruf.
WINE mit maximalen Ausgabedetails: Die VM bricht nach wenigen Sekunden zusammen, daher der untypische Programmaufruf.

Treten im Programm keine Fehler auf, so ist dieser Leistungsverlust ohne Gewinn für den Nutzer. Dennoch sind die Nachrichten notwendig, um den Entwicklern ohne Umstände größere Probleme melden zu können. Aus diesem Grund wird bei der Ausführung von WINE die Umgebungsvariable WINEDEBUG beachtet, mit der sich der Detailgrad der Ausgabe steuern lässt.

So können Sie beispielsweise sämtliche Meldungen abschalten, indem WINEDEBUG auf -all gesetzt wird. So wird Prozessorzeit für das Programm selbst frei. Auf der anderen Seite sind für intensivere Fehlersuche auch detailliertere Ausgaben aktivierbar. Hierfür lassen sich vier Wichtigkeitsstufen auf einer Vielzahl von Themenkanälen anzeigen. WINEDEBUG=err+font,fixme+d3d bewirkt etwa, dass schwere Fehler beim Darstellen von Schriftarten und kleine Probleme mit Direct3D angezeigt werden. Eine vollständige Liste der Kanäle finden Sie im WineHQ-Wiki.

Hier sieht die Sache anders aus: Alle Meldungen werden unterdrückt, und Notepad startet anstandslos und zügig.
Hier sieht die Sache anders aus: Alle Meldungen werden unterdrückt, und Notepad startet anstandslos und zügig.

Die Variable wird entweder gesetzt, indem sie direkt vor den Programmaufruf gestellt wird (WINEDEBUG=-all wine notepad.exe), oder indem sie systemweit definiert wird. Die geschieht je nach Shell oder Desktop-Umgebung in unterschiedlicher Weise. Bei beinahe allen Consumer-Linuxen und Mac OS X empfiehlt es sich, export WINEDEBUG=(Optionen) an das Ende der Datei ~/.profile anzuhängen.

Produkte: Grundsätzlich kann die Methode auf jedem System angewendet werden, auf dem WINE lauffähig ist. Lediglich die Art und Weise, wie Umgebungsvariablen gehandhabt werden, unterscheiden sich zum Teil gravierend. Ziehen Sie zu diesem Thema nötigenfalls das Handbuch Ihres Betriebssystems zu Rate. (dre)