AAA-Gaming auf Asahi Linux
(rosenzweig.io)- Asahi Linux bietet die einzigen kompatiblen OpenGL-, OpenCL- und Vulkan-Treiber für M1-Hardware. Diese Ankündigung ist eine Alpha-Version, und das Spiel „Control“ läuft gut.
- Installation: Fedora Asahi Remix installieren, die neuesten Treiber aktualisieren und dann Steam installieren, um das Spiel auszuführen. Funktioniert auf Systemen der M1-/M2-Serie; die meisten Spiele benötigen wegen des Emulations-Overheads 16 GB Arbeitsspeicher.
Stack
- Spiele werden normalerweise als x86-Windows-Binärdateien gerendert, die DirectX verwenden; das Ziel ist die Nutzung von Vulkan auf Arm Linux.
- FEX emuliert x86 auf Arm.
- Wine übersetzt Windows nach Linux.
- DXVK und vkd3d-proton übersetzen DirectX nach Vulkan.
- Problem mit der Seitengröße: x86 erwartet 4K-Seiten, aber Apple-Systeme verwenden 16K-Seiten. Um das zu lösen, wird eine kleine virtuelle Maschine verwendet, um Spiele auszuführen.
Vulkan
- Für die DirectX-Übersetzung wird Vulkan 1.3 mit vielen Erweiterungen benötigt. Honeykrisp ist der einzige Vulkan-1.3-Treiber für Apple-Hardware.
- Tessellation: Die Tessellation-Hardware des M1 ist eingeschränkt, daher wird Tessellation mit komplexen Compute-Shadern umgesetzt.
- Geometry Shader: Der M1 hat keine Geometry-Shader-Hardware, daher werden sie per Compute emuliert.
- Erweiterte Robustheit: Um die Robustheit von DirectX umzusetzen, wird die Erweiterung
VK_EXT_robustness2verwendet.
Nächste Schritte
- Sparse Texturing: Wurde zu Honeykrisp hinzugefügt und ermöglicht das Ausführen weiterer DX12-Spiele.
- Viele Spiele sind spielbar, aber aktuelle AAA-Titel erreichen noch keine 60 fps. Das nächste Ziel sind Performance-Verbesserungen.
- Neben Spielen soll auch allgemeine x86-Emulation hinzugefügt werden.
Zusammenfassung von GN⁺
- Asahi Linux bietet die einzigen Treiber, mit denen sich Spiele auf M1-Hardware ausführen lassen, und eröffnet damit neue Möglichkeiten für Linux-Gaming.
- Das Projekt zeigt die Stärke von Open Source und entsteht durch Beiträge vieler Entwickler.
- Verbesserungen bei der Performance und die Unterstützung weiterer Spiele sind zu erwarten und könnten das Gaming-Erlebnis unter Linux verbessern.
- Ähnliche Projekte mit vergleichbarer Funktionalität sind Proton und Wine.
1 Kommentare
Hacker-News-Kommentare
Tessellation wird in Spielen wie The Witcher 3 verwendet, um Geometrie zu erzeugen. Der M1-Chip unterstützt Hardware-Tessellation, ist aber in DirectX, Vulkan und OpenGL eingeschränkt. Stattdessen muss Tessellation mit komplexen Compute-Shadern umgesetzt werden
Aus Leistungs- und Technologiesicht ist das eine großartige Leistung
Der Traum ist, dass Asahi-Entwickler, Valve und Apple zusammenarbeiten, um ein plattformübergreifendes Proton zu bauen, das Windows-Spiele auf x86- und ARM-Hardware ausführen kann
Die Kombination aus der Leistung und Energieeffizienz der ARM-Chips der M-Serie und einer auf Steam Deck und Proton laufenden Spielebibliothek wäre traumhaft
Sehr coole Sache
Bedeutet das, dass Gaming von Linux auf dem Mac besser wird?
Erstaunliche Arbeit. Ich würde gern fragen, ob Interesse an retrowin32 besteht. Das ist ein Versuch, Übersetzungs- und Virtualisierungsschritte zu reduzieren
Apples Chips der M-Serie haben spezielle Hardware, die x86 mit nahezu nativer Leistung emuliert. Ich frage mich, ob diese Funktion genutzt wird
Es ist beeindruckend, dass alles emuliert wird und trotzdem noch AAA-Spiele laufen können
Ein großartiger Proof of Concept für Linux. Auf dem Mac sind viele AAA-Spiele über Crossover, Parallels und VMWare Personal bereits möglich
Es ist schockierend, wie viel Aufwand nötig ist, um auf Apple-Computern ein gutes Gaming-Erlebnis zu bekommen. Es wirkt, als hätte man sich in den letzten Jahren gegenüber Gaming feindselig verhalten
Ich frage mich, ob M3 deshalb nicht unterstützt wird, weil es sich ziemlich stark von M1 und M2 unterscheidet
Ich habe gesehen, dass FEX verwendet wird, und frage mich, ob es leistungsmäßig mit box86 vergleichbar ist
Ich hoffe, dass NixOS oder zumindest Arch irgendwann auf dem Niveau von Fedora unterstützt wird