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

Nach drei Monaten Entwicklung wurde die Version 21.2.0 der freien Implementierung der APIs OpenGL und Vulkan veröffentlicht. Der erste Release der Version 21.2.0 hat den experimentellen Status — nach der endgültigen Codestabilisierung wird die stabile Version 21.2.1 herausgegeben.

Mesa 21.2 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 verfügbar für AMD (r600) und NVIDIA (nvc0) GPUs, während OpenGL 4.3 für virgl (virtuelle GPU Virgil3D für QEMU/KVM) bereitgestellt wird. Vulkan 1.2 wird für Intel- und AMD-Karten sowie im Emulator-Modus (vn) unterstützt, Vulkan 1.1 ist für Qualcomm-GPU und den Software-Rasterizer lavapipe verfügbar, und Vulkan 1.0 wird für Broadcom VideoCore VI (Raspberry Pi 4) GPUs unterstützt.

Hauptneuheiten:

  • Inklusive ist der OpenGL-Treiber asahi mit anfänglicher Unterstützung für den Grafikprozessor, der in Apple M1-Chips verbaut wird. Der Treiber verwendet die Gallium-Schnittstelle und unterstützt den Großteil der OpenGL 2.1 und OpenGL ES 2.0-Funktionen, ist jedoch derzeit ungeeignet für die Ausführung der meisten Spiele. Der Treiber-Code basiert auf dem Referenz-Gallium-Treiber noop, wobei ein Teil des Codes aus dem für ARM Mali-GPU entwickelten Panfrost-Treiber übernommen wurde.
  • Das Paket enthält den OpenGL-Treiber Crocus, der Unterstützung für ältere Intel-GPUs (basierend auf den Mikroarchitekturen Gen4-Gen7) bietet, die vom Iris-Treiber nicht unterstützt werden. Im Gegensatz zum i965-Treiber basiert der neue Treiber auf der Gallium3D-Architektur, die die Speicherverwaltung an den DRI-Treiber im Linux-Kernel delegiert und einen einsatzbereiten Status-Tracker mit Unterstützung für den Cache von wiederverwendeten Ausgaben bereitstellt.
  • Das Paket umfasst den PanVk-Treiber, der Unterstützung für die Grafikschnittstelle Vulkan für ARM Mali Midgard und Bifrost GPUs bietet. PanVk wird von Mitarbeitern der Firma Collabora entwickelt und als Weiterführung des Projekts Panfrost positioniert, das Unterstützung für OpenGL bietet.
  • Der Panfrost-Treiber für Midgard-GPUs (Mali T760 und neuer) und Bifrost-GPUs (Mali G31, G52, G76) unterstützt OpenGL ES 3.1. Zukünftige Pläne beinhalten die Optimierung der Leistung auf Bifrost-Chips und die Implementierung von Unterstützung für GPUs auf Basis der Valhall-Architektur (Mali G77 und neuer).
  • In den 32-Bit-Bauversionen für die x86-Architektur werden anstelle von x87-Befehlen für mathematische Berechnungen sse2-Befehle verwendet.
  • Der Nouveau nv50-Treiber für NVIDIA GT21x GPUs (GeForce GT 2×0) unterstützt OpenGL ES 3.1.
  • Im Vulkan-Treiber TURNIP und im OpenGL-Treiber Freedreno, die für die Qualcomm Adreno GPU entwickelt werden, wurde eine erste Unterstützung für die GPU Adreno a6xx gen4 (a660, a635) implementiert.
  • Im Vulkan-Treiber RADV (AMD) wurde die Unterstützung für das Primitiv-Culling mithilfe der NGG (Next-Gen Geometry) Shader-Engines hinzugefügt. Zudem wurde die Möglichkeit geschaffen, den RADV-Treiber unter Windows mit dem MSVC-Compiler zu bauen.
  • Im Vulkan-Treiber ANV (Intel) und im OpenGL-Treiber Iris wurden vorbereitende Arbeiten zur Unterstützung der kommenden Intel Xe-HPG (DG2) Grafikkarten durchgeführt. Dazu gehören erste Funktionen für Raytracing und Unterstützung von Shadern für das Raytracing.
  • Im Treiber lavapipe, der einen Software-Rasterizer für die Vulkan-API implementiert (ähnlich llvmpipe, aber für Vulkan, der API-Aufrufe der Vulkan-API in die Gallium-API übersetzt), wurde der Modus "wideLines" unterstützt (ermöglicht die Unterstützung von Linien mit einer Breite von mehr als 1,0).
  • Die Unterstützung für dynamische Erkennung und das Laden alternativer Backends von GBM (Generic Buffer Manager) wurde implementiert. Diese Änderung zielt darauf ab, die Unterstützung von Wayland auf Systemen mit NVIDIA-Treibern zu verbessern.
  • Im Zink-Treiber (der OpenGL-API-Umsetzung über Vulkan, die eine hardwarebeschleunigte OpenGL-Nutzung ermöglicht, sofern die Systemtreiber nur Vulkan-API unterstützen) wurden die OpenGL-Erweiterungen GL_ARB_sample_locations, GL_ARB_sparse_buffer, GL_ARB_shader_group_vote, GL_ARB_texture_filter_minmax und GL_ARB_shader_clock implementiert. Formatmodifikatoren für DRM (Direct Rendering Manager, ergänzt durch die Erweiterung VK_EXT_image_drm_format_modifier) wurden hinzugefügt.
  • In den Vulkan-Treibern RADV (AMD), ANV (Intel) und lavapipe wurde die Unterstützung für folgende Erweiterungen hinzugefügt:
    • VK_EXT_provoking_vertex (RADV);
    • VK_EXT_extended_dynamic_state2 (RADV);
    • VK_EXT_global_priority_query (RADV);
    • VK_EXT_physical_device_drm (RADV);
    • VK_KHR_shader_subgroup_uniform_control_flow (RADV, ANV);
    • VK_EXT_color_write_enable (RADV);
    • VK_EXT_acquire_drm_display (RADV, ANV);
    • VK_EXT_vertex_input_dynamic_state (lavapipe);
    • VK_EXT_line_rasterization (lavapipe);
    • VK_EXT_multi_draw (ANV, lavapipe, RADV);
    • VK_KHR_separate_depth_stencil_layouts (lavapipe);
    • VK_EXT_separate_stencil_usage (lavapipe);
    • VK_EXT_extended_dynamic_state2 (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