La versione Mesa 24.3 della libreria grafica open-source, libera e multi-piattaforma è stata ufficialmente rilasciata per i sistemi operativi basati su GNU/Linux come il 3° aggiornamento principale della serie 24.x. Mesa è una libreria grafica fondamentale per Linux, che fornisce driver open-source per le interfacce grafiche OpenGL e Vulkan, consentendo la visualizzazione di grafica 2D e 3D su una vasta gamma di hardware. Grazie alla sua architettura modulare, Mesa supporta diverse GPU, tra cui quelle di AMD, NVIDIA e Intel, offrendo agli sviluppatori e agli utenti un accesso diretto alle funzionalità grafiche avanzate.
Questo aggiornamento arriva più di 3 mesi dopo la versione Mesa 24.2 e introduce significative novità , tra cui la conformità a Vulkan 1.3 (una specifica API per la grafica 3D che offre un basso overhead e un accesso diretto all’hardware) per il driver grafico V3DV (un driver grafico progettato per supportare l’API Vulkan su dispositivi Raspberry Pi), utilizzato nei dispositivi Raspberry Pi 4 e Raspberry Pi 5. Questo miglioramento dovrebbe fornire un notevole incremento delle prestazioni grafiche per la distribuzione Raspberry Pi OS al prossimo aggiornamento.
Novità nel Driver V3DV
Oltre alla conformità a Vulkan 1.3, il driver V3DV ha ricevuto supporto per l’estensione Vulkan: VK_KHR_shader_relaxed_extended_instruction. Questa estensione consente una maggiore flessibilità nella gestione delle istruzioni negli shader (programmi che descrivono come visualizzare i pixel e gestire effetti grafici), ottimizzando ulteriormente le prestazioni grafiche.
L’introduzione di questa estensione è particolarmente significativa, poiché permette ai programmatori di utilizzare un insieme più ampio di istruzioni nei loro shader, migliorando così l’efficienza e la qualità visiva delle applicazioni grafiche. Con il supporto per Vulkan 1.3 e le nuove estensioni, il driver V3DV si posiziona come una soluzione potente per gli sviluppatori che lavorano su progetti per Raspberry Pi, contribuendo a migliorare l’esperienza utente e le prestazioni complessive dei giochi e delle applicazioni grafiche.
Miglioramenti ai Driver NVIDIA
Mesa 24.3 apporta anche miglioramenti al driver NVK di Collabora per le GPU NVIDIA, introducendo supporto per diverse nuove estensioni Vulkan, tra cui:
- VK_EXT_descriptor_buffer
- VK_EXT_post_depth_coverage
- VK_EXT_legacy_vertex_attributes
- VK_KHR_maintenance7
- VK_KHR_dynamic_rendering_local_read
- VK_NV_compute_shader_derivatives
- VK_KHR_compute_shader_derivatives
- VK_KHR_shader_relaxed_extended_instruction
- VK_KHR_shader_float_controls2
- VK_EXT_device_generated_commands
- VK_EXT_host_image_copy
- VK_EXT_depth_clamp_control
- VK_KHR_shader_quad_control
- VK_KHR_fragment_shading_rate
- VK_EXT_depth_clamp_zero_one
Queste estensioni migliorano le capacità del driver, rendendolo più competitivo e performante nel contesto delle moderne applicazioni grafiche.
Aggiornamenti per il Driver RADV
Anche il driver RADV per le GPU Radeon ha ricevuto attenzione nella versione Mesa 24.3, con supporto per le seguenti estensioni Vulkan:
- VK_KHR_video_maintenance1
- VK_KHR_pipeline_binary
- VK_KHR_compute_shader_derivatives
- VK_KHR_shader_relaxed_extended_instruction
- VK_KHR_shader_float_controls2
- VK_EXT_device_generated_commands
- VK_EXT_depth_clamp_control
Questi aggiornamenti mirano a migliorare ulteriormente le prestazioni e la compatibilità delle schede grafiche AMD con le applicazioni che utilizzano Vulkan.
Supporto per i Driver Intel
Mesa 24.3 porta anche supporto per le estensioni Vulkan ai driver Intel ANV e HASVK (Haswell Vulkan), inclusi:
- Per ANV:
- VK_KHR_compute_shader_derivatives
- VK_KHR_shader_relaxed_extended_instruction
- VK_EXT_depth_clamp_control
- Per HASVK:
- VK_KHR_shader_relaxed_extended_instruction
- VK_EXT_depth_clamp_control
Inoltre, i driver Honeykrisp (un driver Vulkan open-source progettato per supportare le GPU Apple M1), Turnip (un driver Vulkan per le GPU Qualcomm Adreno, principalmente utilizzato in dispositivi mobili) e Lavapipe (un driver Vulkan basato su CPU, che consente l’esecuzione di applicazioni Vulkan su processori senza una GPU dedicata) hanno ricevuto supporto per l’estensione VK_KHR_shader_relaxed_extended_instruction. Questa estensione consente una maggiore flessibilità nella gestione delle istruzioni negli shader, migliorando così le prestazioni grafiche complessive e l’efficienza nell’elaborazione delle operazioni grafiche.
Aggiornamenti OpenGL
Sul fronte OpenGL (un’API per la grafica 2D e 3D che consente di renderizzare grafica in tempo reale), il driver RadeonSI (un driver open-source per le GPU AMD Radeon, progettato per supportare le schede grafiche più vecchie) ha ottenuto supporto per l’estensione GL_KHR_shader_subgroup. Questa estensione consente di utilizzare funzionalità avanzate negli shader, migliorando la capacità di eseguire operazioni su gruppi di shader, il che può portare a prestazioni migliori in applicazioni grafiche complesse.
Il driver Panfrost di Collabora (un driver open-source per le GPU ARM Mali, che mira a fornire un supporto completo per Vulkan e OpenGL) ha aggiunto supporto per le estensioni GL_ARB_timer_query e GL_EXT_disjoint_timer_query. Queste estensioni permettono di misurare il tempo impiegato da diverse operazioni grafiche, fornendo informazioni preziose per l’ottimizzazione delle prestazioni.
Il driver Zink (un driver che implementa OpenGL sopra Vulkan, consentendo l’esecuzione di applicazioni OpenGL su piattaforme Vulkan) ha integrato il supporto per le estensioni GL_OVR_multiview e GL_OVR_multiview2, che consentono il rendering simultaneo di più viste, utile in applicazioni come la realtà virtuale.
Infine, il driver Etnaviv (un driver open-source per le GPU Vivante, utilizzate principalmente in dispositivi embedded) ha ricevuto supporto per le estensioni GL_EXT_draw_buffers2, GL_ARB_draw_buffers_blend, GL_ARB_draw_indirect e GL_ARB_framebuffer_no_attachments. Queste estensioni offrono funzionalità aggiuntive nella gestione dei buffer di disegno e nella composizione delle immagini, migliorando la flessibilità e le capacità grafiche complessive del driver.
Correzioni di Bug nei Videogiochi
Mesa 24.3 include anche correzioni significative per numerosi videogiochi, tra cui:
- Black Myth: Wukong
- Red Dead Redemption 2
- Resident Evil 6
- Total War: WARHAMMER II
- Call of Duty: Black Ops III
- Silent Hill 2
- War Thunder
- Detroit: Become Human
- Faaast Penguin
- Warhammer 40,000: Space Marine 2
- Ion Fury
- Genshin Impact
- Arma Reforger
- Counter-Strike 2
- Worms: Revolution
- Asterix & Obelix XXL: Romastered
- Metal Gear Rising: Revengeance
- Fallout 3
Questi aggiornamenti mirano a risolvere vari problemi di prestazioni e stabilità riscontrati dai giocatori.
DisponibilitÃ
Mesa 24.3 arriverà presto nei repository software stabili della distribuzione GNU/Linux preferita dagli utenti, ma è già possibile scaricare il pacchetto sorgente dalla pagina di annuncio. Si consiglia agli utenti di aggiornare la propria installazione Linux a questa versione il prima possibile, specialmente se sono appassionati di videogiochi.
Fonte: https://lists.freedesktop.org/archives/mesa-announce/2024-November/000786.html
Fonte: https://9to5linux.com/mesa-24-3-open-source-graphics-stack-adds-vulkan-1-3-conformance-for-v3dv
Source: Read More