Khronos veröffentlicht „Vulkan” 1.0: Des Kaisers neuer Mantle

khronos

AMD sorgte mit der Veröffentlichung der hauseigenen Mantle-API vor ca. 2 Jahren für Aufsehen. Der ansonsten eher für CPUs, GPUs und auch APUs bekannte Hersteller stieß mithilfe des Entwickler-Studios DICE (berühmt z.B. durch die Battlefield-Spieleserie) die Diskussion an, dass Microsofts dominierende DirectX-API die Leistung limitiert. Das Industriekonsortium Khronos, in dem viele namhafte IT-Firmen zusammenarbeiten und das bisher v.a. für OpenGL und OpenCL bekannt war, hat heute eine neue Grafik-Schnittstelle präsentiert: Vulkan 1.0. Die technischen Eckpunkte sind für Leser, die mit AMDs Schnittstelle Mantle vertraut sind, schnell ausgebreitet: Alles, was Mantle kann, kann auch Vulkan. Das ist auch kein Wunder, stellte AMD dem Konsortium die Mantle-Quellen zur freien Verfügung. Folgerichtig bezeichnet AMD selbst Vulkan als Abkömmling Mantles, quasi Mantle 2.0. Typisch ist z.B. die sehr dünne Treiberschicht:

Der Vorteil für den AMD-Nutzer liegt also weniger in technischen Details, sondern schlicht in der breiten Industrieunterstützung. Die Erzrivalen Nvidia und Intel sitzen nun mit im Vulkan-Boot. Auch Imagination und Mediatek aus dem Mobilsegment sind mit von der Partie. Aufgrund der geballten Marktmacht ist es nun für Spielehersteller deutlich attraktiver, Software für Vulkan zu schreiben. Bereits Mantle zog relativ viele Spieleentwickler an, nun wird auch der Rest folgen. Einzig DX 12 ist noch der große Konkurrent. Das läuft bekanntlich aber nur unter dem neuesten Windows 10, während Vulkan neben Linux samt Googles Android sogar noch Windows XP unterstützen will:

Da die Programmiermodelle von Vulkan und DX 12 ähnlich sind, könnte es aber auch schlicht zu einer friedlichen Koexistenz kommen, da Ports von DX 12 zu Vulkan und umgekehrt deutlich einfacher zu bewerkstelligen sein werden als aktuell z.B. von DX 11 zu OpenGL.

AMD fühlt sich mit seiner aktuellen GPU-Architektur Graphics Core Next (GCN) besonders gut auf Vulkan vorbereitet. Mit der Unterstützung von Multi-threaded Command Buffers sollen mehrere CPU-Kerne besser ausgenutzt werden, um die Leistung zu steigern. Weiterhin bietet die neue API Asynchronous Shading, das derzeit nur mit GCN-basierten GPUs möglich sein soll. Hierbei werden größere Aufgabenpakete (Tasks) für die GPU in kleinere Pakete geteilt. Dadurch können die auf Multi-Threading ausgelegten Ressourcen oder Recheneinheiten besser ausgelastet werden. Dabei soll die Energieeffizienz steigen (Leistung pro Watt). Die Aufteilung soll zudem dafür sorgen, dass kürzere Reaktionszeiten entstehen, die bei der zukünftigen Ausrichtung auf Virtual-Reality-Anwendungen (VR) entscheidend sind.

Bezüglich der Cross-Platform-Fähigkeiten hebt AMD hervor, dass mit der Veröffentlichung unter Linux-basierten Betriebssystemen nun von allen Hardware-Features der GCN-basierten Produkte profitiert werden kann.

Beta-Treiber von AMD für Vulkan gibt es aktuell aber nur für Windows ab Windows 7 SP1. Es werden alle GCN-Chips unterstützt:

Quelle: AMD Radeon™ Software Beta for Vulkan™ Release Notes

Weitere Links:
Vulkan - Industry Forged
Vulkan™ – GPUOpen

Alle Folien: