Release von Mesa 21.0, einer freien Implementierung von OpenGL und Vulkan

Die Veröffentlichung der freien Implementierung der OpenGL- und Vulkan-API – Mesa 21.0.0 – wurde vorgestellt. Die erste Version des Mesa 21.0.0-Zweigs hat den Status experimentell. Nach der endgültigen Stabilisierung des Codes wird die stabile Version 21.0.1 veröffentlicht. Mesa 21.0 bietet vollständige Unterstützung für OpenGL 4.6 für die Treiber 965, iris (Intel), radeonsi (AMD), zink und llvmpipe. Unterstützung für OpenGL 4.5 ist für AMD-GPUs (r600) und NVIDIA (nvc0) verfügbar, während OpenGL 4.3 für virgl (virtuelle GPU Virgil3D für QEMU/KVM) bereitgestellt wird. Die Unterstützung von Vulkan 1.2 ist für Intel- und AMD-Karten implementiert, Vulkan 1.0 für VideoCore VI (Raspberry Pi 4).

Hauptneuheiten:

  • Der Treiber Zink (Implementierung der OpenGL-API über Vulkan) bietet Unterstützung für OpenGL 4.6. Zink ermöglicht hardwarebeschleunigtes OpenGL in Systemen, deren Treiber lediglich die Vulkan-API unterstützen. Die Leistung von Zink ist vergleichbar mit der Leistung der nativen OpenGL-Implementierungen.
  • Im llvmpipe-Treiber, der für die Software-Rendering ausgelegt ist, ist Unterstützung für OpenGL 4.6 implementiert.
  • Im Freedreno-Treiber, der für die Grafik-Subsysteme von Qualcomm-Chips verwendet wird, wird Unterstützung für OpenGL ES 3.0 für GPU Adreno a6xx bereitgestellt.
  • Im Panfrost-Treiber für Midgard-GPUs (Mali-T7xx, Mali-T8xx) und Bifrost (Mali G3x, G5x, G7x) wird Unterstützung für OpenGL 3.1 sowie Unterstützung für OpenGL ES 3.0 für Bifrost-GPUs bereitgestellt.
  • Der Radeonsi-Treiber unterstützt die OpenGL-Erweiterungen GL_EXT_demote_to_helper_invocation und GL_NV_compute_shader_derivatives. Für das Spiel „Counter-Strike: Global Offensive“ ist standardmäßig der Optimierungsmodus „mesa_glthread“ aktiviert, der die Leistung um 10-20% steigern kann. Es wurden Optimierungen implementiert, die sich auf die Durchführung von SPECViewPerf-Tests auswirken. Die Unterstützung für das Profiling-Tool Radeon GPU Profiler (RGP) wurde hinzugefügt. Für die GPUs Zen 3 und RDNA 2 wurde die Technologie Smart Access Memory hinzugefügt. Außerdem wurde die Unterstützung für HEVC SAO (Sample Adaptive Offset, für GPUs mit Unterstützung von VCN2, VCN2.5 und VCN3) und für AV1-Dekodierer (für RDNA 2/RX 6000 und nur über das OpenMAX-Interface) eingeführt.
  • Im Vulkan-Treiber RADV (für AMD-Grafikkarten) wurde die Unterstützung für die Technologie Rapid packed math (16-Bit-Vektorisierung) und Sparse Memory hinzugefügt (dies ermöglicht es, Ressourcen wie Bilder und Texturen nicht sequenziell zu platzieren und sie für unterschiedliche Speicherzuweisungsoperationen erneut zuzuordnen). Es wurden Performance-Optimierungen für die RX 6000-Serie durchgeführt. Zudem wurden die Erweiterungen VK_VALVE_mutable_descriptor_type und VK_KHR_fragment_shading_rate (nur für RDNA2) hinzugefügt.
  • In den Intel ANV- und Iris-Treibern wurden Leistungsoptimierungen hinzugefügt und eine erste Unterstützung für Vulkan-Erweiterungen zur Raytracing-Implementierung in den Xe HPG-Grafikkarten angeboten.
  • Die Unterstützung der Erweiterung EGL_MESA_platform_xcb wurde hinzugefügt, die es Anwendungen ermöglicht, EGL-Ressourcen aus X11-Ressourcen ohne Zugriff auf Xlib zu erstellen.
  • Im Vulkan-Treiber V3DV, der für den VideoCore VI-Grafikbeschleuniger entwickelt wurde, der auf Raspberry Pi 4-Platinen mit dem Broadcom BCM2711-Chip verwendet wird, wurde die Unterstützung für Wayland WSI (Windowing System Integration) implementiert, die den Zugang zur Vulkan-API aus Wayland-basierten Umgebungen ermöglicht.
  • Eine erste Implementierung einer Schicht, die OpenGL-Aufrufe in die DirectX 12-API übersetzt, wurde angenommen, um grafische Anwendungen in der WSL (Windows Subsystem for Linux) zu ermöglichen. Darüber hinaus wurde die Bibliothek spirv_to_dxil integriert, die die Umwandlung von SPIR-V-Shader-Intermediate Representation in DXIL (DirectX Intermediate Language) ermöglicht und von Microsoft entwickelt wurde.
  • Die Unterstützung für das Haiku-Betriebssystem wurde überarbeitet und erheblich verbessert.
  • Die Einstellungen glx_disable_oml_sync_control, glx_disable_sgi_video_sync und glx_disable_ext_buffer_age wurden aus driconf entfernt.
  • Die Unterstützung für DRI1 wurde entfernt und die Möglichkeit zur Verwendung von DRI-Treibern aus Mesa-Versionen unter 8.0 wurde eingestellt.
  • Der swrast-Treiber, der auf der klassischen DRI-Schnittstelle basiert und für die softwarebasierte Darstellung von OpenGL vorgesehen war, wurde entfernt (die verbleibenden Software-Rendering-Treiber llvmpipe und softpipe übertreffen swrast in Leistung und Funktionalität deutlich). Die Entfernung von swrast wurde durch zahlreiche ungelöste Probleme und Rückschritte begünstigt, da dieser Treiber bereits in den Distributionen nicht mehr verwendet wird.
  • Die alte klassische Variante der OSMesa-Schnittstelle wurde entfernt (OSMesa basierend auf Gallium bleibt erhalten), die das Rendering nicht auf den Bildschirm, sondern in einen im Speicher befindlichen Puffer ermöglicht.

    Quelle: opennet.ru
Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster