Gallium 3D, LLVM e Gnome 3

By | luglio 19, 2017

Recentemente il driver LLVMpipe per Gallium3D è stato aggiornato con la possibilità di far funzionare l’estensione openGL GLX_EXT_texture_from_pixmap.

Tutta questa sfilza di sigle cosa vuol dire? In pratica che molto probabilmente dalle prossime versioni delle distribuzioni Linux sarà possibile far funzionare Gnome 3 ( e chissà anche Unity) senza avere una scheda grafica accelerata!

Iniziamo a chiarire un minimo quello di cui stiamo parlando:

Gallium3D è prima di tutto un framework per lo sviluppo di driver grafici la cui peculiarità è quella di semplificarne la scrittura ed anche la portabilità tra sistemi operativi e API grafiche.

In sostanza la libreria Gallium3D è una sorta di interfaccia tra la parte di Frontend, ovvero le librerie grafiche di visualizzazione (es. OpenGL, OpenVL, DirectX) e la parte di backend ovvero l’hardware ed il sistema operativo sottostante.

Dunque qualsiasi driver scritto in maniera compatibile con le librerie Gallium ottiene automaticamente la compatibilità con le librerie grafiche per le quali è disponibile uno “State Tracker” che è la parte di Gallium che si interfaccia con le API di disegno.

I driver scritti con queste librerie non sono tantissimi, ma il progetto sta destando interesse così che è tutto in via di sviluppo, si vedano i driver Noveau, Ati Open Source, Inte i915. La parte che più ci interessa in questo articolo è che esistono dei backend per utilizzare la CPU anziché la scheda grafica.

Esistono due implementazioni, softpipe e LLVMpipe. Il primo è utilizzato per softpipe mentre il secondo sfrutta il compilatore LLVM, che genera codice ottimizzato per diverse piattaforme. Il driver LLVMpipe è stato recentemente modificato così da poter utilizzare l’estensione OpenGL GLX_EXT_texture_from_pixmap, che è quella sfruttata da Compiz e Gnome 3 e che consente di generare una textura a partire da un color buffer.

Siamo alla panacea, anche se dubitiamo che le prestazioni siano accettabili su sistemi di qualche anno, le cui CPU si dovrebbero far carico di operazioni pensate per schede grafiche 3D. Fateci sapere a quale temperatura arriverà il vostro processore.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *