Xe è il nuovo driver grafico del kernel Linux per iGPU e dGPU moderni
Intel svelata ha recentemente rilasciato la versione iniziale di de un nuovo driver per il kernel Linux, con nome in codice «Xe», menziona che questi nuovi driver sono Destinato all'uso con GPU e schede grafiche integrate discreto basato sull'architettura Intel Xe utilizzato nella grafica integrata sin dai processori Tiger Lake e selezionate schede grafiche della famiglia Arc.
L'obiettivo dello sviluppo del driver è fornire un framework per supportare nuovi chip, non legato al codice per supportare piattaforme precedenti. Viene inoltre annunciata una condivisione più attiva del codice Xe con altri componenti del sottosistema DRM (Direct Rendering Manager).
Il codice è stato inizialmente progettato per supportare varie architetture hardware ed è disponibile per il test su sistemi x86 e ARM.
Gli ingegneri del driver grafico Linux di Intel hanno lavorato silenziosamente su un nuovo driver Direct Rendering Manager per la nuova grafica Gen12/Xe e hanno fatto passi da gigante per evitare di portare in giro il vecchio bagaglio di driver i915.
Questa è una presentazione per Xe, un nuovo driver per GPU Intel che supporta entrambi.
piattaforme integrate e discrete da Tiger Lake (prima piattaforma con architettura Intel Xe). L'intenzione di questo nuovo pilota è di avere una nuova base lavorare da ciò non è ostacolato dalle piattaforme più vecchie, pur prendendo anche il opportunità di ridisegnare il nostro controller per aumentare la condivisione nel drm sottosistema, sfruttando e permettendoci di contribuire maggiormente ad altri Componenti condivisi come TTM e drm/scheduler. Il modello di memoria è basato su VM bind che è simile all'implementazione i915. Allo stesso modo l'execbuf L'implementazione per Xe è molto simile a execbuf3 su i915
Si dice che l'attuale implementazione sia ancora considerata un'opzione sperimentale per la discussione da parte degli sviluppatori, che non è ancora pronta per l'integrazione nella parte principale del kernel. Il lavoro sul vecchio controller i915 non si ferma e la sua manutenzione continuerà . Il nuovo controller Xe dovrebbe essere pronto nel 2023.
Il codice è in una fase in cui è già funzionale ed esperto
supporto per più piattaforme a partire da Tiger Lake, con supporto iniziale
implementato in Mesa (per Iris e Anv, i nostri driver OpenGL e Vulkan), così come
come in NEO (per OpenCL e Level0). Sono stati pubblicati un Mesa MR [2] e un NEO
L'implementazione sarà resa pubblica all'inizio del prossimo anno. Abbiamo anche una suite. da IGT per XE che sarà quotata a breve su IGT.
Nel nuovo controller, la maggior parte del codice per interagire con gli schermi è preso in prestito dal driver i915 e, in futuro, gli sviluppatori prevedono di garantire la condivisione di questo codice su entrambi i controller per evitare la duplicazione di componenti tipici (ora tale codice viene semplicemente ricostruito due volte, ma si stanno discutendo opzioni alternative di condivisione del codice).
Il modello di memoria in Xe è molto vicino all'implementazione del modello di memoria i915 e l'implementazione di execbuf è molto simile a execbuf3 dal codice i915. Per supportare le API grafiche OpenGL e Vulkan, oltre al driver per il kernel Linux, il progetto ha preparato anche delle modifiche per far funzionare i driver Iris e ANV Mesa attraverso il modulo Xe.
Nella sua forma attuale, il collegamento Xe-Mesa è già abbastanza maturo per eseguire browser e giochi basati su GNOME, OpenGL e Vulkan, ma ci sono ancora alcuni problemi e bug, tra le altre cose, che ne causano il crash. Inoltre, non è stato ancora svolto alcun lavoro di ottimizzazione delle prestazioni.
Infine vale la pena ricordare che Il piano di Intel è continuare a lavorarci e fonderlo con Mesa in parti più piccole, ma la tua bozza principale per l'intera cosa si attaccherà man mano che procedi per consentire una più facile correzione.
Se si interessati a saperne di più, puoi controllare i dettagli nel file seguente link