Veröffentlichung von Mesa 20.1.0, einer kostenlosen Implementierung von OpenGL und Vulkan

Eingereicht von Veröffentlichung einer kostenlosen Implementierung der OpenGL- und Vulkan-API - Mesa 20.1.0. Die erste Veröffentlichung des Mesa 20.1.0-Zweigs hat einen experimentellen Status – nach der endgültigen Stabilisierung des Codes wird eine stabile Version 20.1.1 veröffentlicht. In Mesa 20.1 umgesetzt Volle OpenGL 4.6-Unterstützung für Intel- (i965, Iris) und AMD-GPUs (radeonsi), OpenGL 4.5-Unterstützung für AMD- (r600) und NVIDIA-GPUs (nvc0), OpenGL 4.3 für Virgl (virtuelle GPU). Virgil3D für QEMU/KVM) sowie Vulkan 1.2-Unterstützung für Intel- und AMD-Karten.

unter Änderungen:

  • Hinzugefügt von Eine aktive Geräteauswahlschicht für die Vulkan-API auf Systemen mit mehreren Vulkan-fähigen GPUs, die ähnlich wie DRI_PRIME für OpenGL funktioniert. Um den aktiven Treiber und die GPU auszuwählen, wird die Umgebungsvariable MESA_VK_DEVICE_SELECT bereitgestellt (falls nicht installiert, wird DRI_PRIME verwendet).
  • Unterstützung für Chips, die nächstes Jahr auf Basis der neuen Mikroarchitektur erwartet werden, wurde zum i965 und den Iris-Treibern für Intel-GPUs hinzugefügt Rocket Lake.
  • Der ANV Vulkan-Treiber wird für Intel-GPUs entwickelt hinzugefügt Optimierung für Chips basierend auf der Icelake-Mikroarchitektur (Gen11), die die Verwendung reiner Farben bei der Texturierung ermöglicht. Beim Test in Dota2 reduzierte die Änderung die Anzahl der Farbkonvertierungsvorgänge um 95 % und steigerte die Leistung um 3.5 %.
  • Im Vulkan-Treiber ANV erhöht Effizienz der Cache-Nutzung auf Systemen mit Intel Ivybridge- und Haswell-Chips. Die Verwendung der Vulkan-Rechenfunktionstests von Geekbench 5 zeigte eine Leistungssteigerung von 330 % auf Haswell GT3-Hardware (ein Anstieg aufgrund der Tatsache, dass der Cache zuvor unter bestimmten Bedingungen nicht verwendet wurde).
  • Treiber für Intel-GPUs (i965, Iris) hinzugefügt „Schwarzes Loch“-Modus (OpenGL-Erweiterung INTEL_blackhole_render), der alle von der GPU übertragenen Rendering-Vorgänge deaktiviert, die Verarbeitung von OpenGL-Vorgängen jedoch beibehält.
  • Die zuvor für AMD-Chips hinzugefügte Vektorisierungsunterstützung wurde für Intel-Grafikchips portiert NIR, eine typlose Zwischendarstellung (IR) von Shadern, die auf die unterste Ebene unter GLSL IR und Mesas interner IR ausgerichtet ist. Auf der praktischen Seite ermöglichte die Änderung aufgrund einer besseren Optimierung der Shader eine Leistungssteigerung von OpenGL und Vulkan in vielen Spielen auf Systemen mit Intel-GPUs. Zum Beispiel im Spiel
    Rise of the Tomb Raider отмечается Leistungssteigerung um 3 %, in Shadow of the Tomb Raider um 10 %.

  • Im Backend zum Kompilieren von Shader „ACO„, der von Valve als Alternative zum LLVM-Shader-Compiler entwickelt wird, wurde für die GFX9+-GPU Unterstützung für den Typ ShaderInt16 hinzugefügt, was die Verwendung von 16-Bit-Ganzzahlen im Shader-Code ermöglicht. Für
    AMD Navi-GPU (GFX10) gesichert Verwendung von NGG-Engines (Next-Gen Geometry) bei der Arbeit mit Vertex- und Tessellations-Shadern.

  • Für AMD Navi 12- und Navi 14-GPUs enthalten Unterstützung für den angezeigten DCC-Modus (Delta Color Compression), der das Arbeiten mit komprimierten Farbdaten bei der Organisation der Anzeigeausgabe gewährleistet.
  • Hinzugefügt von experimentelle NIR-Unterstützung für den klassischen Gallium3D-Treiber R600 (AMD Radeon HD 2000-6000) mit Unterstützung für Geometrie, Fragment, Vertex und Tessellation Shader.
  • Vulkan RADV-Treiber hinzugefügt Ein Patch, der die Speicherleistung optimiert, erhöht die Leistung von Id Tech-Spielen auf Systemen mit AMD-APUs.
  • Im Panfrost-Treiber umgesetzt experimentelle Unterstützung für OpenGL ES 3.0 und zur Verfügung gestellt 3D-Rendering-Unterstützung für Bifrost GPU (Mali G31). Es wurde eine erste Implementierung eines Shader-Compilers vorbereitet, der einen Bifrost-GPU-spezifischen Satz interner Anweisungen unterstützt.
  • Der Vulkan-Treiber TURNIP, entwickelt für Qualcomm Adreno GPUs, hinzugefügt Unterstützung für Geometrie-Shader und Adreno 650-Chips.
  • Im Gallium3D-Treiber LLVMpipe, der Software-Rendering bereitstellt, erschienen Unterstützung für Tessellations-Shader.
  • Eingeführt большая Teil Optimierungen in glthread (Multithread-Implementierung von OpenGL). Nach den Änderungen stieg die Leistung des Torcs-Rennsimulators in der Standardkonfiguration um 16 % und bei aktiviertem glthread um 40 %.
  • Hinzugefügt von Option „allow_draw_out_of_order“ (aktiviert über driconf), um Optimierungen zu ermöglichen, um CAD-spezifische Zeichenvorgänge außerhalb der Reihenfolge zu beschleunigen. Wenn diese Option aktiviert ist, wird im Viewperf11 Catia-Test eine Beschleunigung von 7 % beobachtet.
  • Neue OpenGL-Erweiterungen hinzugefügt:
  • Erweiterungen zum RADV Vulkan-Treiber hinzugefügt (für AMD-Karten):
  • Erweiterungen zum ANV Vulkan-Treiber hinzugefügt (für Intel-Karten):

    Source: opennet.ru

Kommentar hinzufügen