Rilascio di Mesa 22.0, un'implementazione gratuita di OpenGL e Vulkan

Dopo quattro mesi di sviluppo è stata pubblicata la versione gratuita dell'implementazione delle API OpenGL e Vulkan, Mesa 22.0.0. La prima versione del ramo Mesa 22.0.0 ha uno stato sperimentale: dopo la stabilizzazione finale del codice verrà rilasciata una versione stabile 22.0.1. La nuova versione si distingue per l'implementazione dell'API grafica Vulkan 1.3 nel driver anv per GPU Intel e radv per GPU AMD.

Il supporto Vulkan 1.2 è disponibile in modalità emulatore (vn), il supporto Vulkan 1.1 è disponibile per le GPU Qualcomm (tu) e il rasterizzatore software lavapipe e il supporto Vulkan 1.0 è disponibile per le GPU Broadcom VideoCore VI (Raspberry Pi 4). Mesa 22.0 fornisce inoltre il supporto completo OpenGL 4.6 per i driver 965, iris (Intel), radeonsi (AMD), zink e llvmpipe. Il supporto OpenGL 4.5 è disponibile per le GPU AMD (r600) e NVIDIA (nvc0) e il supporto OpenGL 4.3 per virgl (GPU virtuale Virgil3D per QEMU/KVM) e vmwgfx (VMware).

Principali innovazioni:

  • Aggiunto il supporto per l'API grafica Vulkan 1.3.
  • Il codice per i driver OpenGL classici che non utilizzano l'interfaccia Gallium3D è stato spostato dal Mesa principale al ramo separato "Amber", inclusi i driver i915 e i965 per GPU Intel, r100 e r200 per GPU AMD e Nouveau per GPU NVIDIA. Anche il driver SWR, che offriva un rasterizzatore software OpenGL basato sul progetto Intel OpenSWR, è stato spostato nel ramo "Amber". Dalla struttura principale è esclusa la classica libreria xlib, al posto della quale si consiglia di utilizzare la variante gallium-xlib.
  • Il driver Gallium D3D12 con un livello per l'organizzazione del lavoro OpenGL sopra l'API DirectX 12 (D3D12) garantisce la compatibilità con OpenGL ES 3.1. Il driver viene utilizzato nel livello WSL2 per eseguire applicazioni grafiche Linux su Windows.
  • Il supporto per i chip Intel Alderlake (S e N) è stato aggiunto al driver OpenGL "iris" e al driver Vulkan "ANV".
  • I driver GPU Intel includono il supporto per la tecnologia Adaptive-Sync (VRR) per impostazione predefinita, consentendo di modificare in modo adattivo la frequenza di aggiornamento del monitor per una visualizzazione fluida e senza strappi.
  • Il driver RADV Vulkan (AMD) continua a implementare il supporto per il ray tracing e gli shader per il ray tracing.
  • Il driver v3dv, sviluppato per l'acceleratore grafico VideoCore VI, utilizzato a partire dal modello Raspberry Pi 4, offre la possibilità di lavorare sulla piattaforma Android.
  • Per EGL è implementato un meccanismo di "feedback dma-buf", che fornisce informazioni aggiuntive sulle GPU disponibili e consente di aumentare l'efficienza dello scambio di dati tra la GPU principale e quella secondaria, ad esempio per organizzare l'output senza buffering intermedio.
  • Al driver vmwgfx è stato aggiunto il supporto OpenGL 3, utilizzato per implementare l'accelerazione 4.3D in ambienti VMware.
  • È stato aggiunto il supporto per le estensioni ai driver Vulkan RADV (AMD), ANV (Intel) e zink (OpenGL over Vulkan):
    • 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_semaforo (zink)
    • VK_EXT_semaphore_fd (zink)
    • VK_VALVE_mutable_descriptor_type (zink)
  • Aggiunte nuove estensioni OpenGL:
    • GL_ARB_sparse_texture (radeonsi, zinco)
    • GL_ARB_sparse_texture2 (radeonsi, zinco)
    • GL_ARB_sparse_texture_clamp (radeonsi, zinco)
    • GL_ARB_framebuffer_no_attachments
    • GL_ARB_sample_shading

    Fonte: opennet.ru

Aggiungi un commento