Grafikbibliothek Mesa 13.0: Quelloffene Linux-Treiber unterstĂĽtzen jetzt OpenGL 4.5 (so halb)

Die quelloffenen Grafiktreiber von Mesa beherrschen jetzt OpenGL 4.5, melden aber teilweise trotzdem nur Support für 4.3. Allerlei Feintuning verbessert zudem die Performance der GPUs von AMD, Intel, Nvidia und Raspberry Pi.

In Pocket speichern vorlesen Druckansicht 23 Kommentare lesen
Mesa 13.0: Quelloffene Linux-Treiber unterstĂĽtzten jetzt OpenGL 4.5 (so halb)

OpenGL 4.5 wurde im Sommer 2014 spezifiziert; die proprietären Linux-Grafiktreiber von AMD und Nvidia unterstützen die Programmierschnittstelle bereits kurz darauf.

(Bild: Screenshot einer Kronos-Präsentation zu OpenGL)

Lesezeit: 5 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

Ein einfacher Vulkan-Treiber für aktuelle Radeon-Grafikprozessoren zählt zu den größten Neuerungen der jetzt erhältlichen Grafikbibliothek Mesa 13.0. Ferner implementieren die darin enthaltenen 3D-Treiber für Chips von AMD, Intel und Nvidia nun OpenGL 4.5; ganz rund ist die OpenGL-4.5-Unterstützung aber noch nicht.

Außerdem gab es eine ganze Reihe von Korrekturen und Performance-Optimierungen an der Software, die Fedora, Ubuntu & Co. standardmäßig einrichten, um die 3D-Beschleunigung moderner Grafikchips nutzbar zu machen.

Der für Intels moderne Grafikchips zuständige Mesa-Treiber "i965" ist der Einzige, der in der neuen Version die Kompatibilität zu OpenGL 4.5 ausweist. Bei OpenGL 4.4 und höher dürften das nur OpenGL-Implementationen, die eine Qualitätskontrolle mit der kostenpflichtigen Conformance Test Suite (CTS) bestehen. Kurz vor der Freigabe der neuen Mesa-Version gab es zwar noch einige Probleme mit so einem Testlauf; das hat die Intel-Entwickler aber nicht von einer Änderung abgehalten, durch die ihre Grafiktreiber jetzt Support für OpenGL 4.5 meldet.

Dadurch sollten jetzt auch Spiele laufen, denen die bislang maximal unterstützte Version 4.3 nicht reicht. 4.x-Support erfordert indes nach wie vor GPUs der Prozessorgenerationen Broadwell, Skylake oder Kaby Lake, wie sie in Core-i-Prozessoren der 5000er-Reihe und höher stecken.

Auch der Radeonsi-Treiber beherrscht bei modernen Chips jetzt alle zur Implementation von OpenGL 4.5 erforderlichen OpenGL-Erweiterungen. Der Treiber, der bei den Grafiktreiberfamilien Amdgpu und Radeon zum Einsatz kommt, meldet aber nach wie vor nur Kompatibilität zu Version 4.3 der Programmierschnittstelle. Spiele und Anwendungen mit höheren Anforderungen können aber trotzdem laufen, solange sie die Unterstützung für einzelnen OpenGL-Erweiterungen abfragen, statt lediglich die OpenGL-Version abzufragen. Alternativ kann man Mesa über die Umgebungsvariablen MESA_GL_VERSION_OVERRIDE=4.5 und MESA_GLSL_VERSION_OVERRIDE=450 auffordern, Support für 4.5 auszuweisen.

Wie schon die OpenGL-4.3-Unterstützung des im Juli veröffentlichten Mesa 12.0 erfordert der Support für die OpenGL-4.5-Erweiterungen den Einsatz von LLVM 3.9. Durch zahlreiche Optimierungen an Radeonsi und dem in LLVM enthaltenden Amdgpu-Backend entlockt Mesa modernen Radeon-GPUs außerdem mehr 3D-Leistung und verbessert so die Performance unter anderem bei Spielen.

Auch der Nvc0-Teil des Nouveau-Treibers von Mesa 13.0 weist lediglich 4.3-Support aus, obwohl er alle für OpenGL 4.5 nötigen OpenGL-Erweiterungen beherrscht. Letzteres allerdings nur bei GPUs der Generationen Fermi und Kepler, zu denen viele GeForce-Karten der Baureihen 400 bis 700 gehören. Für die Praxis hat das aber nicht viel Bedeutung, denn nach wie vor liefert der 3D-Treiber nur dürftige Leistung, weil der zugehörige Treiber im Linux-Kernel die meisten modernen Grafikchip nichts in ihre schnellsten Betriebsmodi schalten kann.

Das neue Mesa bringt zudem den Treiber Radv mit, mit dem sich modernen Radeon-Grafikchips über die Programmierschnittstelle Vulkan verwenden lassen. Der Treiber stammt im wesentlichen von zwei Mesa-Entwicklern, die unabhängig von AMD arbeiten. Anfangs war es ein sehr rudimentärer Treiber; er reifte aber schnell und ist mittlerweile gut genug für die Spiele DOTA2 und Talos Principle, obwohl er Vulkan nicht komplett implementiert.

Ungewiss ist noch, inwieweit sich Radv als quelloffener Vulkan-Treiber bei Linux-Distributionen etabliert, denn er bekommt wahrscheinlich früher oder später Konkurrenz durch einen mächtigen Vulkan-Treiber, an dem AMD selbst bastelt. AMDs Treiberfamilie "AMD GPU-Pro" bringt einen solchen bereits mit, der Vulkan komplett unterstützt, aber unter einer proprietären Lizenz steht; AMD hat aber vor einem Jahr verkündet, selbst einen Vulkan-Treiber unter einer Open-Source-Lizenz veröffentlichen zu wollen.

Intels i965-Treiber implementiert bei den neuesten Chips nun auch OpenGL ES 3.2. Der in Mesa enthaltenen Vulkan-Treiber fĂĽr Intel-GPUs erhielt zahlreiche Fehlerkorrekturen und Optimierungen.

Über die in Mesa enthaltene Implementierung des Video Acceleration API (VA API/Libva) lassen sich nun auch H.264-Videos per GPU encodieren, sofern diese das denn beherrscht. Die Schnittstellen für OpenMAX (Open Media Acceleration) ermöglichen jetzt ein Decoding von H.265.

Auch bei den in Mesa enthaltenen Grafiktreibern für Embedded-GPUs allerlei Verbesserungen. Einige davon versprechen Performance-Zuwächse beim Treiber Vc4, der die 3D-Engine der Raspberry-Pi-GPUs unterstützt. Details zu diesen und weiteren Änderungen erläutern die Freigabeankündigung von Mesa 13.0. (thl)