
PanVK è un driver grafico open-source sviluppato da Collabora all’interno del progetto Panfrost, con l’obiettivo di fornire supporto accelerato alle GPU ARM Mali sui sistemi GNU/Linux. Questo driver si basa sullo stack grafico Mesa, che costituisce un elemento chiave per l’elaborazione grafica in molte distribuzioni. PanVK rappresenta l’alternativa per le API Vulkan rispetto al driver Panfrost, che invece implementa il supporto per le API OpenGL.
Il progetto è stato avviato circa 4 anni fa, puntando a fornire compatibilità per le architetture Midgard e Bifrost delle GPU Mali. Oggi, PanVK ha raggiunto un importante traguardo tecnico con la conformità allo standard Vulkan 1.1 sulla GPU ARM Mali-G610 utilizzata in SBC (Single Board Computer o schede a singola unità) più orientate a prestazioni elevate, come la NanoPi M6 e la OrangePi 5 Ultra, che integrano processori Rockchip RK3588 o RK3588S che non la serie Raspberry Pi che utilizza GPU VideoCore. Questo progresso consente una gestione grafica più efficiente e una compatibilità migliorata con applicazioni moderne e giochi di ultima generazione.
PanVK è distribuito sotto la licenza MIT, una licenza permissiva che promuove la libertà di utilizzo e modifica del codice sorgente. È integrato nei principali repository software delle distribuzioni GNU/Linux, garantendo così facilità di accesso e installazione. L’ultima versione stabile, Mesa 25.0.2, include il supporto iniziale per questa conformità allo standard Vulkan, consolidando ulteriormente le capacità del progetto.
Novità in PanVK
Il team di Collabora ha confermato che PanVK ha superato tutti i test necessari per essere considerato conforme allo standard Vulkan 1.1, un passo importante verso l’adozione su larga scala. Questo risultato è stato raggiunto grazie al supporto di Arm, che ha contribuito all’invio dei risultati di conformità.
Tra le novità più rilevanti:
- Supporto per le architetture armhf (a 32 bit) e aarch64 (a 64 bit).
- Miglioramenti nella stabilità e nelle prestazioni per le GPU Midgard e Bifrost.
- Preparazione per il futuro aggiornamento a Vulkan 1.2, con piani per arrivare fino alle versioni 1.3 e 1.4.
Inoltre, circa un anno fa, PanVK ha introdotto il supporto per le GPU ARM V10, tra cui le Mali-G610 e Mali-G310, ampliando la compatibilità con dispositivi più recenti.
Cosa significa la conformità Vulkan 1.1?
Vulkan è un’API grafica moderna e ad alte prestazioni, alternativa a OpenGL, progettata per sfruttare al meglio le GPU multi-core. Rispetto a Vulkan 1.0, la versione 1.1 introduce:
- Miglioramenti nella gestione della memoria.
- Supporto avanzato per il multithreading.
- Ottimizzazioni per il rendering avanzato.
Grazie a questa conformità, PanVK può eseguire un numero maggiore di applicazioni e giochi che richiedono Vulkan 1.1, rendendolo una scelta valida per dispositivi basati su ARM Mali, come smartphone economici, tablet Android e smart TV.
Prossimi sviluppi
Sebbene PanVK non sia ancora ritenuto idoneo per un utilizzo in contesti di produzione, Collabora sta dedicando risorse significative al miglioramento del driver. Il lavoro attualmente si concentra sulla risoluzione di bug e sull’implementazione di nuove funzionalità per aumentarne l’affidabilità e l’efficacia. L’obiettivo principale a lungo termine è rendere PanVK una soluzione matura e stabile, comparabile al livello di funzionalità e prestazioni offerto dal driver Panfrost, già affermato. Questo progresso mira a garantire un’esperienza grafica di qualità superiore, offrendo agli utenti delle distribuzioni GNU/Linux uno strumento ottimizzato per soddisfare le esigenze moderne di applicazioni e giochi avanzati.
Fonte: https://www.collabora.com/news-and-blog/news-and-events/panvk-is-officially-vulkan-11-conformant.html
Fonte: https://9to5linux.com/panvk-open-source-vulkan-driver-for-arm-mali-gpus-is-now-vulkan-1-1-conformant
Source: Read More