Martin Gräßlin: Wir sollten über OpenGL 1.0 und KWin nachdenken

3 Kommentare Autor: Jürgen (jdo)

KDE 4 LogoAlte Hardware bis in alle Ewigkeiten zu unterstützen, bringt einen gewissen Aufwand mit sich. Genau darüber macht sich Martin Gräßlin in seinem Blog Gedanken – im bezug auf KWin.

Auslöser dafür war Apples Ankündigung, dass sie in der nächsten Ausgabe von Mac OS X die Unterstützung für diverse GPUs einstellen. Somit hat er sich gefragt, wie viel Aufwand man in KWin betreibe, um alte Grafik-Hardware weiterhin zu unterstützen.

Man solle aber im Hinterkopf behalten, dass “Altlasten” und “langsamere Hardware” zwei paar unterschiedliche Stiefel sind.OpenGL ES 2.0 Hardware ist eine Verbesserung, weil der meiste Code mit dem Backend von OpenGL 2 geteilt würde. OpenGL 1.0 habe hingegen einen komplett anderen Code-Pfad. Ein Optimieren für langsamere Hardware kommt dem gesamten System zu Gute, während ein Optimieren für Altlasten dem System schaden könnte.

Bis vor kurzer Zeit hat Mesa OpenGL 2 nicht unterstützt. Dieser Umstand gehört allerdings der Geschichte an. Hardware, die OpenGL 2 also nicht unterstützt, fehlt es schon von Grund auf an gewissen Funktionen. ATI / AMD unterstützt OpenGL 2 seit der R300. Diese wurde im Jahre 2002 veröffentlicht. Auf NVIDIA-Seite ist die OpenGL-2-Unterstützung seit dem Jahre 2004 vorhanden und Intel bringt dies seit 2006 mit sich. Diese Informationen hat Gräßlin aus dem KWin-Code.

Seit also mindestens 6 Jahren bringen die drei großen Grafikchip-Hersteller Unterstützung für OpenGL 2 mit sich. Daraus ergibt sich auch ein weiteres Problem – Testhardware an sich. Weiterhin gruselt sich Gräßlin davor, Code auf einem Uralt-System nur wegen Testzwecken zu kompilieren.

Lange Rede, kurzer Sinn: Unterstützung für Altlasten erhöht die Komplexität und den Wartungs-Aufwand für OpenGL-1-Hardware, die man nicht mal testen kann. Auch mache weder Wayland noch Qt5 auf der alten Hardware Sinn.

Die logische Konsequenz ist nun Mal, OpenGL 1.x in die Tonne zu treten. Damit beschwöre er aber gleichzeitig einen Konflikt mit einigen Benutzergruppen herauf, die weiterhin gerne Unterstützung für diese Altlasten hätten.

Ein größeres Problem stelle allerdings der proprietäre ATI-Treiber (Catalyst oder fglrx) dar. Ein entfernen der OpenGL-1.x-Unterstützung würde auch das Ende der Unterstützung aller fglrx-betriebenen Systeme bedeuten. Grund ist, dass das indirekte Rendering der verfügbaren API auf OpenGL 1.x begrenzt ist, auch wenn die GPU OpenGL 4 unterstützt. Allerdings habe der radeon-Treiber überhaupt keine Probleme mit OpenGL 2 auf der selben Hardware. Somit würde es Gräßling die Unterstützung für den proprietären Treiber ohne mit der Wimper zu zucken entfernen.

Eine möglich und gute Lösung sind die llvmpipe-Treiber in Mesa. Zumindest Fedora wolle die llvmpipe-Treiber für GNOME Shell einsetzen. Sobald Mesa 8.0 auf seinem Debian-Testsystem eintrifft, wird er die Möglichkeiten von llvmpipe für KWin evaluieren. Wenn er mit den Ergebnissen zufrieden ist, könnte dies das Ende von OpenGL 1.x in KWin besiegeln.

Irgendwie hat er auch Recht. Es gibt genug Fenster-Manager, die kein Compositing brauchen und auch weniger stressig für ältere Hardware sind. Xfce und LXDE sind sehr gute Alternativen. Somit sollte man den Fortschritt von KWin nicht durch Altlasten behindern und den Wartungs-Aufwand lieber in die Weiterentwicklung und Verbesserung stecken, oder?




 Alle Kommentare als Feed abonnieren

3 Kommentare zu “Martin Gräßlin: Wir sollten über OpenGL 1.0 und KWin nachdenken”

  1. DerMaex says:

    Witzig... jetzt verwende ich auf meinem Notebook extra KDE, weil die Gnome-Shell mit dem proprietären ATI-Treiber nicht funktioniert, der aber die Akku-Laufzeit signifikant erhöht und das Notebook kühl bleiben lässt, und jetzt das... ;))

    • jdo says:

      Müsste sich halt AMD auch ein bisschen bewegen, oder? 🙂

      • DerMaex says:

        "Müsste, sollte,..." sind bei philosophischer Betrachtungsweise mit Sicherheit sehr interessant, allerdings in der Realität eher nicht primär.

        Da ja in Martin Gräßlins Blog nicht steht, dass er es "jetzt entfernen" möchte, denke ich, dass da noch das eine, oder andere, Jahr Zeit sein wird. Notfalls gäbe es noch LXDE, oder XFCE, oder der Biss in den sauren Apfel mit dem freien Radeon. Oder beides... ein System für den mobilen Bereich, und ein anderes für zuhause... mit einer gemeinsamen Datenpartition..

        Ausserdem bin ich mir noch gar nicht so sicher, was das im Endeffekt für KDE bedeutet, gehen dann nur die Effekte nicht, oder geht das ganze DE nicht?