Der Vulkan-Treiber RADV wurde auf die Nutzung des Shader-Kompilierungs-Backends ACO umgestellt.

Im Code-Basis, die zur Erstellung der Mesa 20.2-Version verwendet wird, wurde das RADV umgeschaltet, den Vulkan-Treiber für AMD-Chips, auf die standardmäßige Nutzung des "ACO" Backends zur Shaderkompilierung, das von Valve als Alternative zum LLVM-Shader-Compiler entwickelt wird. Diese Änderung wird die Leistung von Spielen erhöhen und die Ladezeiten verkürzen. Um zum alten Backend zurückzukehren, ist die Umgebungsvariable "RADV_DEBUG=llvm" vorgesehen.

Das Umschalten des RADV-Treibers auf das neue Backend wurde möglich, nachdem ACO in Bezug auf die Funktionalität Parität mit dem alten Backend erreicht hat, das von AMD für den AMDGPU-Treiber entwickelt wurde und weiterhin im OpenGL-Treiber RadeonSI verwendet wird. Die von Valve durchgeführte Testung hatte gezeigt, dass ACO den AMDGPU-Shader-Compiler in Bezug auf die Kompilierungsgeschwindigkeit fast um das Doppelte übertrifft und in einigen Spielen eine Erhöhung der FPS auf Systemen mit dem RADV-Treiber zeigt.

Der Vulkan-Treiber RADV wurde auf die Nutzung des Shader-Kompilierungs-Backends ACO umgestellt.

Der Vulkan-Treiber RADV wurde auf die Nutzung des Shader-Kompilierungs-Backends ACO umgestellt.

Das ACO-Backend zielt darauf ab, eine möglichst optimale Codegenerierung für Shader von Spielanwendungen zu gewährleisten und eine sehr hohe Kompilierungsgeschwindigkeit zu erreichen. ACO ist in C++ geschrieben, wird mit Blick auf die mögliche Anwendung für JIT-Kompilierung entwickelt und nutzt schnelle Datenstrukturen zum Durchsuchen, um pointerbasierte Strukturen zu vermeiden. Die Zwischenrepräsentation des Codes basiert vollständig auf SSA (Static Single Assignment) und ermöglicht eine präzise Registerzuteilung, indem sie die Register entsprechend dem Shader vorab berechnet.

Zusatz: Derzeit funktioniert ACO nur für den Vulkan-Treiber Mesa RADV. Aber die Entwickler von ACO in Redmond bestätigt wurde. Es wird berichtet, dass dieses Update abstürzt, wenn beim Setzen von Hintergrundbildern die Option "Strecken" verwendet wird. Das Problem tritt bei Windows 7 SP1 aller Editionen und Windows Server 2008 R2 SP1 auf., dass ihr nächster Schritt sein wird, mit der Erweiterung der Funktionen von ACO zu beginnen, um die Unterstützung des OpenGL-Treibers RadeonSI zu gewährleisten, damit ACO in Zukunft auch für diesen Treiber den LLVM-Shader-Compiler standardmäßig ersetzen kann.

Quelle: opennet.ru

60GB SSD 8Gb DDR4