Die Woche: Ubuntu 9.04 und Intel-Grafik

Unter Linuxern gilt Intel-Grafik wegen der Open-Source-Treiber vom Hersteller als bevorzugte Lösung, wenn man nicht allerhöchste 3D-Leistung benötigt. Derzeit liegt bei dem Intel-Treiber allerdings einiges im Argen.

In Pocket speichern vorlesen Druckansicht 138 Kommentare lesen
Lesezeit: 5 Min.
Von
  • Dr. Oliver Diedrich

Ubuntu 9.04 ist da, bringt aktuelle Software und eine Reihe spannender Neuerungen, darunter einen drastisch beschleunigten Bootprozess – und meine Begeisterung über das neue Release ist trotzdem ein bisschen gedämpft. Grund dafür ist ein einziger Treiber: der für Intel-Grafikchips. Der Intel-Treiber hat, wie die Ubuntu-Entwickler in ihren Release Notes freimütig zugeben, in Ubuntu 9.04 "Performance regressions". Im Klartext: Auf Intel-Chips wird die Grafik mit dem neuen Release langsamer; bei einigen Chips es kann sogar passieren, dass der X-Server einfriert – dafür gibt es aber zumindest schon einen Workaround.

Die Probleme können sich in verschiedenen Symptomen zeigen: Ubuntu-Anwender berichten, dass Flash-Videos in Fullscreen-Auflösung ruckeln, 3D-Spiele unakzeptabel langsam laufen, der Desktop mit aktivierten 3D-Effekten kaum noch benutzbar ist; im Extremfall kann selbst das Verschieben von Fenstern so langsam werden, dass der Rechner kaum mehr benutzbar ist. Auch wir haben in Tests auf verschiedenen Intel-Grafikchips einige dieser Symptome beobachten können.

Nun ist der Intel-Grafiktreiber im Moment gerade eine ziemliche Baustelle, wie auch die Entwickler wissen. Mit dem Kernel 2.6.28, den Ubuntu 9.04 ausliefert, ist der Graphics Execution Manager (GEM) in den Kernel eingezogen. Er soll die Speicherverwaltung des X-Servers vereinfachen und effizienter machen, bedingt aber Änderungen im Grafik-Treiber.

Mit dem aktuellen Kernel 2.6.29 ist eine weitere Änderung im Kernel hinzugekommen, die der Intel-Treiber ebenfalls bereits berücksichtigt: Kernel-based Mode Setting (KMS). Was wenig spektakulär klingt – an Stelle des X-Servers kümmert sich der Kernel um die Einstellung des Grafikmodus – hat dramatische Auswirkungen auf den Grafiktreiber: Laut Intel-Entwickler Keith Packard ist rund die Hälfte des Codes in Intels Linux-Grafiktreiber für Mode Setting zuständig.

Dann gibt es die neue Direct Rendering Infrastructure 2 (DRI2), die das alte System zur 3D-Beschleunigung ablösen soll. Und schließlich hat Intel eine neue 2D-Beschleunigungsarchitektur names UXA entwickelt, die von den Veränderungen profitiert, die der Graphics Execution Manager bringt. UXA soll das bislang verwendete EXA und die noch ältere XFree86 Acceleration Architecture (XAA) ablösen.

Aus GEM oder kein GEM, Mode Setting im Kernel oder per Treiber, vier verschiedenen Möglichkeiten für die 2D-Beschleunigungen (keine, XAA, EXA, UXA) und drei Optionen für die 3D-Beschleunigung (keine, DRI, DRI2) ergeben sich, wie Packard vorrechnet, theoretisch 48 verschiedene Kombinationen, mit denen der Treiber funktionieren muss (praktisch sind nicht alle Kombinationen realisierbar, da beispielsweise UXA GEM zwingend voraussetzt und DRI2 nicht mit EXA genutzt werden kann). Dazu kommt eine weitere Schwierigkeit: Der Treiber muss eine Vielzahl von Intel-Grafikchips ansteuern, die zudem auch noch in verschiedenen Varianten existieren. Das macht systematisches Testen nahezu unmöglich.

Ziel der ganzen Entwicklungen ist es, letztlich mit GEM, Kernel-based Mode Setting, DRI2 und XUA den Treiber deutlich zu entschlacken und die Grafik-Performance zu steigern. Schwierig ist nur der Übergang: Schließlich sind ältere Kernel als 2.6.29, in denen KMS oder GEM und KMS fehlen, noch in praktisch allen aktuellen Distributionen im Einsatz.

Und genau in diese kritische Übergangsphase ist Ubuntu 9.04 gestolpert: GEM drin, KMS nicht, EXA und DRI lahm, UXA und DRI2 noch wacklig, und welche Kombination auf welchem Chip performant und stabil läuft, scheint niemand zu wissen – die lange Liste an widersprüchlichen Erfahrungen, die die UXA-Tests bei Ubuntu ergeben haben, lassen auch keine schnelle Antwort erwarten. So bleiben denn auch die Empfehlungen in den Ubuntu-Release-Notes vage: "Einige Nutzer haben eine Verbesserung erzielt, indem sie ...", "... hat in einigen Fällen eine beträchtliche Performance-Steigerung gebracht", "Risiko beträchtlicher Instabilität". Anwendern, die Probleme haben, bleibt nichts anderes übrig, als die verschiedenen Vorschläge auszuprobieren und zu hoffen, dass es zu einer Besserung ohne inakzeptable Nebenwirkungen kommt. Ein Troubleshooting Guide gibt dazu einige Hinweise.

Das alles, könnte man sagen, betrifft aber doch bloß einen einzigen Treiber und kann nun mal passieren, wenn man alte Zöpfe abschneiden will. Stimmt, bloß: Intel-Grafik ist seit Jahren die Empfehlung für Linux-Anwender, die keine maximale 3D-Leistung brauchen, da Intel seinen Treiber ganz vorbildlich als Open Source im Rahmen des X.org-Projektes entwickelt. Nvidia- und AMD-Chips hingegen benötigen proprietäre Treiber, und die haben auch ihre Probleme – die die Kernel- und X-Entwickler dann aber mangels Quellcode nicht einmal diagnostizieren können.

Zudem hat Intel seit der Vorstellung der Centrino-Plattform Anfang 2003 seinen Marktanteil bei der Notebook-Grafik immer mehr steigern können – in jedem zweiten Notebook dürfte derzeit ein Grafikchip von Intel stecken. Und während man bei einem Desktop mit integrierter Intel-Grafik zur Not eine AMD- oder Nvidia-Karte vom Grabbeltisch einbauen kann, muss man bei Notebooks mit der eingebauten Grafik leben.

Bleibt nur zu hoffen, dass die Entwickler die Probleme möglichst schnell in den Griff kriegen – und Ubuntu dann zügig Updates ausliefert. Sonst könnte der gute Ruf der Distribution leiden. (odi) (odi)