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

Nach vier Monaten Entwicklungszeit wurde die Veröffentlichung einer kostenlosen Implementierung der OpenGL- und Vulkan-APIs – Mesa 22.0.0 – veröffentlicht. Die erste Veröffentlichung des Mesa 22.0.0-Zweigs hat einen experimentellen Status – nach der endgültigen Stabilisierung des Codes wird eine stabile Version 22.0.1 veröffentlicht. Die neue Version zeichnet sich durch die Implementierung der Vulkan 1.3-Grafik-API im anv-Treiber für Intel-GPUs und radv für AMD-GPUs aus.

Vulkan 1.2-Unterstützung ist im Emulatormodus (vn) verfügbar, Vulkan 1.1-Unterstützung ist für Qualcomm (tu)-GPUs und Lavapipe-Software-Rasterizer verfügbar und Vulkan 1.0-Unterstützung ist für Broadcom VideoCore VI-GPUs (Raspberry Pi 4) verfügbar. Mesa 22.0 bietet außerdem vollständige OpenGL 4.6-Unterstützung für die Treiber 965, Iris (Intel), Radeonsi (AMD), Zink und llvmpipe. OpenGL 4.5-Unterstützung ist für AMD- (r600) und NVIDIA-GPUs (nvc0) sowie OpenGL 4.3-Unterstützung für virgl (virtuelle Virgil3D-GPU für QEMU/KVM) und vmwgfx (VMware) verfügbar.

Wichtigste Neuerungen:

  • Unterstützung für die Vulkan 1.3-Grafik-API hinzugefügt.
  • Der Code für klassische OpenGL-Treiber, die nicht die Gallium3D-Schnittstelle verwenden, wurde vom Haupt-Mesa in einen separaten Zweig „Amber“ verschoben, einschließlich der i915- und i965-Treiber für Intel-GPUs, r100 und r200 für AMD-GPUs und Nouveau für NVIDIA-GPUs. Der SWR-Treiber, der einen OpenGL-Software-Rasterizer auf Basis des Intel OpenSWR-Projekts bot, wurde ebenfalls in den „Amber“-Zweig verschoben. Die klassische xlib-Bibliothek ist von der Hauptstruktur ausgeschlossen, stattdessen wird empfohlen, die Gallium-xlib-Variante zu verwenden.
  • Der Gallium-Treiber D3D12 mit einer Ebene zur Organisation der OpenGL-Arbeit auf der DirectX 12-API (D3D12) gewährleistet die Kompatibilität mit OpenGL ES 3.1. Der Treiber wird in der WSL2-Schicht verwendet, um grafische Linux-Anwendungen unter Windows auszuführen.
  • Unterstützung für Intel Alderlake (S und N) Chips wurde dem OpenGL-Treiber „iris“ und dem Vulkan-Treiber „ANV“ hinzugefügt.
  • Intel-GPU-Treiber unterstützen standardmäßig die Adaptive-Sync-Technologie (VRR), sodass Sie die Bildwiederholfrequenz des Monitors für eine reibungslose, rissfreie Anzeige adaptiv ändern können.
  • Der RADV Vulkan-Treiber (AMD) implementiert weiterhin Unterstützung für Raytracing und Shader für Raytracing.
  • Der v3dv-Treiber, der für den Grafikbeschleuniger VideoCore VI entwickelt wurde und ab dem Raspberry Pi 4-Modell verwendet wird, bietet die Möglichkeit, auf der Android-Plattform zu arbeiten.
  • Für EGL ist ein „dma-buf-Feedback“-Mechanismus implementiert, der zusätzliche Informationen über die verfügbaren GPUs liefert und es ermöglicht, die Effizienz des Datenaustauschs zwischen Haupt- und Sekundär-GPU zu steigern, um beispielsweise die Ausgabe ohne Zwischenpufferung zu organisieren.
  • OpenGL 3-Unterstützung wurde dem vmwgfx-Treiber hinzugefügt, der zur Implementierung der 4.3D-Beschleunigung in VMware-Umgebungen verwendet wird.
  • Den Vulkan-Treibern RADV (AMD), ANV (Intel) und Zink (OpenGL über Vulkan) wurde Unterstützung für Erweiterungen hinzugefügt:
    • VK_KHR_dynamic_rendering (lavapipe,radv,anv)
    • VK_EXT_image_view_min_lod (radv) KHR_synchronization2.txt VK_KHR_synchronization2]] (radv)
    • VK_EXT_memory_object (zink)
    • VK_EXT_memory_object_fd (zink)
    • VK_EXT_semaphore (zink)
    • VK_EXT_semaphore_fd (zink)
    • VK_VALVE_mutable_descriptor_type (zink)
  • Neue OpenGL-Erweiterungen hinzugefügt:
    • GL_ARB_sparse_texture (radeonsi, zink)
    • GL_ARB_sparse_texture2 (radeonsi, zink)
    • GL_ARB_sparse_texture_clamp (radeonsi, zink)
    • GL_ARB_framebuffer_no_attachments
    • GL_ARB_sample_shading

    Source: opennet.ru

Kommentar hinzufügen