Release von Mesa 22.1, einer OpenGL- und Vulkan-Implementierung

Nach zwei Monaten Entwicklung wurde die Veröffentlichung der offenen Implementierung der OpenGL- und Vulkan-APIs – Mesa 22.1.0 – bekannt gegeben. Die erste Version der Mesa 22.1.0-Reihe hat den Status "experimentell"; eine stabile Version 22.1.1 wird nach der abschließenden Stabilisierung des Codes bereitgestellt.

Mesa 22.1 bietet Unterstützung für die Grafik-API Vulkan 1.3 in den Treibern anv für Intel-GPUs, radv für AMD-GPUs und im Software-Rasterizer lavapipe. Unterstützung für Vulkan 1.2 wird im Emulatorbetrieb (vn) bereitgestellt, Vulkan 1.1 im Treiber für Qualcomm-GPUs (tu) und Vulkan 1.0 im Treiber für Broadcom VideoCore VI (Raspberry Pi 4). Mesa bietet ebenfalls umfassende Unterstützung für OpenGL 4.6 in den Treibern 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) und vmwgfx (VMware) bereitgestellt wird.

Hauptneuheiten:

  • Im Vulkan-Treiber ANV (Intel) und im OpenGL-Treiber Iris wird Unterstützung für die diskreten Grafikkarten Intel DG2 (Arc Alchemist) und Arctic Sound-M bereitgestellt.
  • Der D3D12-Treiber mit einer Schicht zur Integration von OpenGL über die DirectX 12-API (D3D12) gewährleistet die Kompatibilität mit OpenGL 4.2. Der Treiber wird in der WSL2-Schicht verwendet, um grafische Anwendungen von Linux unter Windows auszuführen.
  • Der lavapipe-Treiber mit einer Implementierung eines Software-Rasterizers für die Vulkan-API (ähnlich wie llvmpipe, jedoch für Vulkan, das API-Aufrufe von Vulkan in die Gallium-API übersetzt) unterstützt nun Vulkan 1.3.
  • Die Unterstützung für die AMD GPU GFX1036 und GFX1037 wurde hinzugefügt.
  • Im RADV-Treiber (AMD) wurde die Möglichkeit zur primitiven Culling bei der Raytracing-Implementierung eingeführt, was die Raytracing-Unterstützung für Spiele wie DOOM Eternal verbessert hat.
  • Eine erste Implementierung des Vulkan-Treibers für GPUs auf Basis der PowerVR Rogue-Architektur, die von Imagination entwickelt wird, wurde vorgeschlagen.
  • Der Nouveau-Treiber für ältere GeForce-GPUs (6/7/8) wurde auf die Verwendung einer typlosen intermediären Darstellung (IR) von NIR-Shadern umgestellt. Die Unterstützung von NIR ermöglicht zudem die Unterstützung der TGSI (Tungsten Graphics Shader Infrastructure) internen Darstellung durch die Verwendung einer Schicht zur Übersetzung von NIR in TGSI.
  • Ein kompakter OpenCL-Compiler, vorgeschlagen von Intel und verwendet beim Raytracing, wurde in den Lieferumfang aufgenommen.
  • Im OpenGL-Treiber v3d, der für den Grafikbeschleuniger VideoCore VI entwickelt wurde und ab dem Modell Raspberry Pi 4 eingesetzt wird, wird die Unterstützung für das Speichern von Shadern auf der Festplatte bereitgestellt.
  • Für AMD-GPUs mit der VCN 2.0 Videoverarbeitungsengine wurde die Unterstützung von EFC (Encoder Format Conversion) implementiert, die es ermöglicht, den Hardware-Video-Encoder für das direkte Lesen von RGB-Oberflächen ohne die RGB->YUV-Konvertierungen, die von Shadern durchgeführt werden, zu nutzen.
  • Im Crocus-Treiber, der für ältere Intel-GPUs auf Basis der Mikroarchitekturen Gen4-Gen7 entwickelt wurde und vom Iris-Treiber nicht unterstützt wird, ist ein Kompatibilitätsprofil für alte Versionen von OpenGL enthalten.
  • Im PanVk-Treiber, der die Unterstützung des Grafik-APIs Vulkan für ARM Mali Midgard und Bifrost GPUs bietet, wurde mit der Unterstützung von Compute-Shadern begonnen.
  • Im Venus-Treiber mit Implementierung eines virtuellen GPUs (virtio-gpu) basierend auf der Vulkan-API wurde die Unterstützung der ANGLE-Schicht hinzugefügt, die für die Übersetzung von OpenGL ES-Aufrufen in OpenGL, Direct3D 9/11, Desktop GL und Vulkan verantwortlich ist.
  • Die Unterstützung der von NVIDIA vorgeschlagenen OpenGL-Erweiterung GL_NV_pack_subimage wurde hinzugefügt, die zum Aktualisieren von Rechtecken im Host-Speicher mit Daten aus einem Framebuffer oder einer Textur dient.
  • In den Vulkan-Treibern RADV (AMD), ANV (Intel) und lavapipe wurde die Unterstützung für folgende Erweiterungen hinzugefügt:
    • VK_EXT_depth_clip_control für lavapipe und RADV.
    • VK_EXT_graphics_pipeline_library für lavapipe.
    • VK_EXT_primitives_generated_query für lavapipe.
    • VK_EXT_image_2d_view_of_3d für ANV und lavapipe.
    • VK_KHR_swapchain_mutable_format für lavapipe.

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