• IT-Karriere:
  • Services:

Linux: Vulkan-Treiber für Raspberry Pi läuft nur über Umwege

Der Vulkan-Grafik-API liegen Annahmen zugrunde, die der Raspberry Pi nicht liefert. Der Vulkan-Treiber läuft dank Anpassungen trotzdem.

Artikel veröffentlicht am ,
Der Vulkantreiber des Raspberry Pi hat noch einige Schwierigkeiten.
Der Vulkantreiber des Raspberry Pi hat noch einige Schwierigkeiten. (Bild: Oliver Nickel/Golem.de)

Auf der diesjährigen Open-Source-Konferenz Fosdem hat der an der Entwicklung beteiligte Programmierer Alejandro Piñeiro einen Überblick zum Stand des Vulkantreibers für den Bastelrechner Raspberry Pi gegeben. Der Treiber für die moderne Grafikarchitektur ist zwar seit mehr als einem Jahr in Entwicklung und inzwischen offiziell fertig gestellt. Laut Piñeiro, der die Arbeiten für die Linux- und Open-Source-Spezialisten von Igalia umsetzt, musste das Team dafür aber einige Besonderheiten beachten.

Stellenmarkt
  1. Deutscher Genossenschafts-Verlag eG, Wiesbaden
  2. Haufe Group, Freiburg

Der wohl wichtigste Punkt dabei ist, dass Vulkan eben genau dazu gedacht ist, sämtliche notwendigen Aufrufe der API auf dem Grafikchip selbst auszuführen. Das soll den CPU-Overhead von älteren Schnittstellen wie bei OpenGL überwinden und so zu einer Beschleunigung der Grafik führen. Der Raspberry Pi unterstützt dies laut dem Vortrag aber nicht vollständig, was das Entwicklungsteam vor Probleme gestellt hat. So müssen Flushes weiter über die CPU koordiniert werden.

Ebenso hat das Team derzeit noch Probleme mit der Umsetzung von Samplern, konkret sind das Filter für das Verarbeiten von linearen Bildern. Das Sampling in Swapchains ist ebenfalls nicht möglich. In den Swapchains werden bei Vulkan mehrere Buffer für Inhalte verwaltet, die für die grafische Darstellung vorgesehen sind. Auch hier können also keine Filter eingesetzt werden, was die Darstellung aber eigentlich beschleunigen könnte.

Ein weiteres Problem für die Vulkan-Implementierung auf dem Raspberry Pi ergibt sich aus der Grundlage des Linux-Codes sowie der 3D-Grafikbibliothek Mesa. Darin wird bisher einfach angenommen, dass es sich bei GPUs für Vulkan um PCIe-Geräte handelt, was bei der Embedded-GPU des Bastelrechners nicht der Fall ist. Daraus wiederum ergibt sich das Problem, dass die Window-System-Integration (WSI) für Vulkan aus dem Mesa-Projekt noch nicht in dem Treiber des Raspberry Pi genutzt werden kann.

Das Team plant natürlich, die beschriebenen Probleme in Angriff zu nehmen und etwa die Unterstützung von WSI zu verbessern. Mittelfristig wollen die Beteiligten die Leistung verbessern. Langfristig hofft das Team, Vulkan 1.1 zu unterstützen und darüber hinaus mehr Code mit OpenGL-Treibern teilen zu können.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Hardware-Angebote
  1. (u. a. Ryzen 5 5600X 358,03€)
  2. (reduzierte Überstände, Restposten & Co.)

Folgen Sie uns
       


Librem Mini - Fazit

Der Librem Mini punktet mit guter Linux-Unterstützung, freier Firmware und einem abgesicherten Bootprozess.

Librem Mini - Fazit Video aufrufen
    •  /