Asahi Linux: Apples M1-GPU komplett auf Metal ausgerichtet

Die GPU im Apple-SoC M1 unterstützt einige Hardwarefunktionen für Vulkan oder OpenGL nicht. Zum Reverse Engineering muss das in den Compiler.

Artikel veröffentlicht am ,
Asahi Linux will Linux auf ARM-Macs portieren.
Asahi Linux will Linux auf ARM-Macs portieren. (Bild: Asahi Linux/CC-BY-SA 4.0)

Die Entwicklerin Alyssa Rosenzweig berichtet in einem Blogpost von den Fortschritten zum Reverse Engineering der Apple-GPU in dem ARM-SoC M1. Demnach fehlen der GPU Fixed-Function-Einheiten, "die bei Wettbewerbern allgegenwärtig sind", wie Rosenzweig schreibt. Demnach gebe es keine Funktionen, um Uniform Buffer Objects oder Vertex Attributes auszulesen. Die Spezifikationen für OpenGL und Vulkan setzen voraus, dass es dafür feste Hardwarefunktionen gibt. Apple setzt dagegen auf das eigene Metal und muss dies nicht beachten.

Stellenmarkt
  1. Systemarchitekt für Fahrwerksysteme (m/w/d)
    Schaeffler Technologies AG & Co. KG, 91074 Herzogenaurach
  2. Fachinformatiker*in für Systemintegration
    3A Composites GmbH, Singen (Hohentwiel)
Detailsuche

Rosenzweig schreibt dazu: "Einfach ausgedrückt: Apple muss sich nicht um die Leistung von Vulkan oder OpenGL kümmern. Seine einzige ordnungsgemäß unterstützte API ist sein eigenes Metal, das es möglicherweise so gestaltet, dass es zur Hardware passt, anstatt die Hardware so zu verzerren, dass sie mit der API übereinstimmt".

Arbeit im Compiler statt in Hardware

Die entsprechenden Arbeiten für diese Funktionen übernimmt dann der Shader-Compiler, den Rosenzweig für das Asahi-Linux-Projekt als Teil des Reverse Engineerings der GPU erstellt. Apple nutze außerdem einige weitere Tricks, um mit dem Kompilieren verbundene Leistungseinbußen zu umgehen. Und auch für Asahi Linux haben die fehlenden Hardwareeinheiten wohl Vorteile.

"Der Silberstreif am Horizont ist, dass es für 'fehlende' Funktionen wie Attributes und Uniform Buffer nichts zu reverse-engineeren gibt. Solange wir wissen, wie man auf den Speicher in Compute-Kernel zugreift, können wir den Code selbst schreiben, ohne Hardware-Rätseleien", schreibt Rosenzweig.

2021 Apple MacBook Pro (14", Apple M1 Pro Chip mit 8-Core CPU und 14-Core GPU, 16 GB RAM, 512 GB SSD) - Silber
Golem Akademie
  1. First Response auf Security Incidents: Ein-Tages-Workshop
    4. März 2022, Virtuell
  2. SAMBA Datei- und Domänendienste einrichten: virtueller Drei-Tage-Workshop
    7.–9. März 2022, Virtuell
Weitere IT-Trainings

Das ist ihr auch dank der Kooperation mit anderen Projektbeteiligten gelungen. Auf Grundlage des NIR-Compilers aus dem freien Mesa-Projekt und einem weitgehend gereiften Verständnis über die Funktionsweise der GPU und deren Befehlssatz existiert nun ein freier Shader-Compiler für die M1-GPU. Der bisherige Code reiche für einfache 3D-Szenen. Demonstriert wird dies mit einem fast schon üblichen gerenderten 3D-Würfel, für dessen Darstellung keinerlei proprietäre Blobs benötigt würden.

Bisher unterstützte der Compiler nur einen kleinen Teil der Funktionen von OpenGL ES 2.0. Auf dem Weg zu einem richtigen Treiber seien aber noch viele weitere wichtige Arbeiten notwendig.

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


Aktuell auf der Startseite von Golem.de
Bitcoin und Co.
Kryptowährungen stürzen ab

Bitcoin, Ether und andere Kryptowährungen haben ein schlechtes Wochenende hinter sich. Bitcoin liegt fast 20 Prozent unter dem Wert der Vorwoche.

Bitcoin und Co.: Kryptowährungen stürzen ab
Artikel
  1. Virtueller Netzbetreiber: Lycamobile ist in Deutschland insolvent
    Virtueller Netzbetreiber
    Lycamobile ist in Deutschland insolvent

    Lycamobile im Netz von Vodafone ist pleite. Der Versuch, über eine Tochter in Irland keine Umsatzsteuer in Deutschland zu zahlen, ist gescheitert.

  2. Arbeiten bei SAP: Nur die Gassi-App geht grad nicht
    Arbeiten bei SAP
    Nur die Gassi-App geht grad nicht

    SAP bietet seinen Mitarbeitern einiges. Manchen mag das zu viel sein, aber die geringe Fluktuation spricht für das Softwareunternehmen.
    Von Elke Wittich

  3. VATM: Telekommunikationsverband will Bundesnetzagentur aufspalten
    VATM
    Telekommunikationsverband will Bundesnetzagentur aufspalten

    Die beiden großen Telekommunikationsverbände VATM und Breko sind hinsichtlich einer Spaltung der Bundesnetzagentur gespalten.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Bosch Professional Werkzeug und Zubehör • Corsair Virtuoso RGB Wireless Gaming-Headset 187,03€ • Noiseblocker NB-e-Loop X B14-P ARGB 24,90€ • ViewSonic VX2718-2KPC-MHD (WQHD, 165 Hz) 229€ • Alternate (u. a. Patriot Viper VPN100 2 TB SSD 191,90€) [Werbung]
    •  /