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

Präsentiert Veröffentlichung der freien Implementierung der APIs OpenGL und Vulkan — Mesa 20.1.0. Der erste Release der Mesa 20.1.0-Serie hat den Status experimentell — nach der endgültigen Stabilisierung des Codes wird die stabile Version 20.1.1 veröffentlicht. In Mesa 20.1 wurde vollständige Unterstützung für OpenGL 4.6 für Intel-GPUs (i965, iris Treiber) und AMD (radeonsi), Unterstützung für OpenGL 4.5 für AMD-GPUs (r600) und NVIDIA (nvc0), OpenGL 4.3 für virgl (virtuelle GPU) Virgl3D für QEMU/KVM), sowie Unterstützung von Vulkan 1.2 für Intel- und AMD-Karten.

Unter Änderungen:

  • Hinzugefügt eine Schicht zur Auswahl des aktiven Geräts für die Vulkan-API in Systemen mit mehreren Vulkan-fähigen GPUs, die ähnlich wie DRI_PRIME für OpenGL funktioniert. Für die Auswahl des aktiven Treibers und der GPU ist die Umgebungsvariable MESA_VK_DEVICE_SELECT vorgesehen (wenn nicht gesetzt, wird DRI_PRIME verwendet).
  • Daten über die unterstützten im nächsten Jahr erwarteten Chips basierend auf einer neuen Mikroarchitektur wurden in die i965- und iris-Treiber für Intel-GPUs hinzugefügt. Rocket Lake.
  • Im entwickelten Vulkan-Treiber ANV für Intel-GPUs hinzugefügt optimierungen für Chips basierend auf der Mikroarchitektur Icelake (Gen11), die die Verwendung reiner Farben beim Texturieren ermöglicht. Bei Tests in Dota2 konnte die Anzahl der Farbtransformationsoperationen um 95% gesenkt und die Leistung um 3,5% gesteigert werden.
  • Im Vulkan-Treiber ANV verbessert Die Effizienz der Cache-Nutzung in Systemen mit Intel Ivybridge- und Haswell-Chips. Die Nutzung der Vulkan-Berechnungstests aus dem Geekbench 5-Test hat einen Leistungszuwachs von 330 % auf der Haswell GT3-Hardware gezeigt (der Zuwachs resultiert daraus, dass der Cache unter bestimmten Bedingungen zuvor nicht verwendet wurde).
  • In Treiber für Intel-GPUs (i965, iris) ein der „Schwarze Loch“-Modus (OpenGL-Erweiterung INTEL_blackhole_render), der alle Rendering-Operationen, die an die GPU übergeben werden, deaktiviert, aber die Verarbeitung von OpenGL-Operationen beibehält.
  • Für Intel-Grafikchips wurde die zuvor für AMD-Chips hinzugefügte Unterstützung für Vektorisierung portiert NIR, typeloses Zwischenformat (IR) von Shadern, das darauf abzielt, auf der untersten Ebene unter GLSL IR und dem internen IR von Mesa zu arbeiten. Praktisch gesehen hat die verbesserte Optimierung der Shader die Leistung von OpenGL und Vulkan in vielen Spielen auf Systemen mit Intel-GPU verbessert. Zum Beispiel in dem Spiel
    Rise of the Tomb Raider gehört lag der Leistungszuwachs bei 3 %, während es in Shadow of the Tomb Raider 10 % betrug.
  • Im Backend zur Kompilierung von Shadern „ACO«, die von Valve als Alternative zum LLVM-Shader-Compiler entwickelt wird, unterstützt jetzt den Datentyp shaderInt16 für GPUs der GFX9+-Serie, was die Verwendung von 16-Bit-Ganzzahlen im Shader-Code ermöglicht. Für
    AMD Navi-GPUs (GFX10) sind gewährleistet die Verwendung von NGG-Engines (Next-Gen Geometry) bei der Arbeit mit Vertex- und Tessellation-Shadern.
  • Für die GPUs AMD Navi 12 und Navi 14 wurde hinzugefügt wurde der angezeigte DCC-Modus (Delta Color Compression) unterstützt, der die Arbeit mit komprimierten Farbdatensätzen beim Bildschirm-Output ermöglicht.
  • Hinzugefügt experimentelle Unterstützung von NIR für den klassischen Gallium3D-Treiber R600 (AMD Radeon HD 2000-6000) mit Unterstützung für geometrische, fragmentäre, vertex- und tessellierende Shader.
  • Im Vulkan-Treiber RADV ein optimiert ein Patch die Speicherverwaltung und erhöht die Leistung von Id Tech-Spielen auf Systemen mit AMD-APUs.
  • Im Panfrost-Treiber wurde wurde experimentelle Unterstützung für OpenGL ES 3.0 und sicherstellt die 3D-Darstellung für Bifrost-GPUs (Mali G31) implementiert. Eine erste Implementierung des Shader-Compilers, der einen GPU-spezifischen Bifrost-Befehlssatz unterstützt, wurde vorbereitet.
  • Im Vulkan-Treiber TURNIP, der für Qualcomm Adreno-GPUs entwickelt wird, hinzugefügt wurde die Unterstützung für geometrische Shader und Adreno 650-Chips hinzugefügt..
  • Im Gallium3D-Treiber LLVMpipe, der die Software-Rendering bereitstellt, wurde eingeführt Unterstützung von Tesselations-Shadern.
  • Eingeführt eine große Menge Optimierungen in glthread (Multithread-Implementierung von OpenGL). Nach den Änderungen erhöhte sich die Leistung des Rennsimulators Torcs um 16 % in der Standardkonfiguration und um 40 % bei Aktivierung von glthread.
  • Hinzugefügt Option allow_draw_out_of_order (aktivierbar über driconf) zur Aktivierung von Optimierungen für die Beschleunigung von nicht geordneten Zeichenoperationen, wie sie in CAD-Systemen vorkommen. Bei Aktivierung dieser Option zeigt der Viewperf11-Test für Catia eine Beschleunigung um 7 %.
  • Neue OpenGL-Erweiterungen wurden hinzugefügt:
  • Im Vulkan-Treiber RADV (für AMD-Karten) wurden folgende Erweiterungen hinzugefügt:
  • Im Vulkan-Treiber ANV (für Intel-Karten) wurden Erweiterungen hinzugefügt:

    Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster