Collabora ha già iniziato a lavorare all'adozione del controller Gallium D3D12

Gli sviluppatori di Collabora rilasciata recentemente tramite un annuncio l'adozione del controller aperto Gallium D3D12, che implementa un livello per organizzare il lavoro OpenGL sull'API DirectX 12 (D3D12), nella composizione principale di Mesa.

Allo stesso tempo, il driver annunciato ha superato con successo il test di compatibilità OpenGL 3.3 quando si lavora su driver WARP (software rasterizer) e NVIDIA D3D12.

Siamo entusiasti di condividere che abbiamo recentemente superato i test di conformità OpenGL 3.3 e aggiornato il codice in Mesa 3D!

Il controller può essere utile utilizzare Mesa su dispositivi con controller solo D3D12 e come punto di partenza per il porting di applicazioni OpenGL da eseguire sull'API D3D12. In particolare, il driver può essere utilizzato per organizzare il funzionamento di applicazioni grafiche in ambienti controllati dal sottosistema WSL (Windows Subsystem for Linux), che assicura il lancio di file eseguibili Linux su Windows.

Una delle principali applicazioni che spicca è il supporto a Photoshop che, come accennato nella pubblicità, potrebbe non essere una grande sorpresa, ma una delle motivazioni di questo lavoro è stata quella di poter eseguire applicazioni come Photoshop su dispositivi Windows senza compatibilità totale con OpenGL.

Sono felice di segnalare che Microsoft ha rilasciato il loro pacchetto di compatibilità che utilizza il nostro lavoro per fornire supporto OpenGL (e OpenCL), Photoshop ora può essere eseguito su Windows su CPU ARM! È così eccitante vedere app di alto profilo come quella beneficiare del nostro lavoro!

Lo sviluppo viene effettuato in collaborazione con gli ingegneri Microsoft per sviluppare strumenti come D3D11On12 per trasferire i giochi alla libreria D3D11 e D3D12 D3D12TranslationLayer, implementa primitive grafiche standard su D3D12.

Sulla base del progetto in esame, Microsoft ha già preparato un livello intermedio ciò che rende possibile eseguire applicazioni basate su OpenGL su dispositivi Windows che non forniscono il supporto completo per OpenGL. In particolare, è stato possibile garantire il funzionamento di Photoshop su dispositivi Windows con processori ARM.

Vorrei sottolineare che avendo approvato OpenGL CTS non è necessariamente lo stesso che essere formalmente conforme. Ci sono alcuni dettagli su come conformarsi formalmente a implementazioni stratificate che sono complicate e lascerò la questione sulla conformità formale a Microsoft e Khronos.

L'implementazione include un driver per Mesa e un compilatore di shader da NIR a DXIL (runtime D3D12), che converte lo shader NIR intermedio di Mesa in formato binario DirectX Intermediate Language (DXIL) basato su LLVM 12 basato su codice bit DirectX 3.7 (DirectX di Microsoft). Il compilatore Shader è un fork di LLVM 3.7).

Anche i problemi di runtime di D3D12 dovrebbero essere risolti prima di inviare i risultati. Stiamo collaborando con Microsoft per risolvere questi problemi in modo appropriato. Queste correzioni potrebbero richiedere del tempo per arrivare a una build di Windows e agli utenti finali, ma alla fine verranno visualizzate.

Ma per il controller del fornitore D3D12 e le versioni precedenti, le cose si complicano ...

Prima di tutto, non è sempre possibile distinguere tra problemi di driver del fornitore e problemi di hardware. E quel che è peggio, poiché questi sono sviluppati da società di terze parti, abbiamo poche informazioni al riguardo. 

Il controller Mesa utilizza l'interfaccia Gallio, accetta comandi OpenGL e, utilizzando il traduttore NIR a DXIL, genera comandi D3D12 che vengono eseguiti sulla GPU utilizzando il driver di sistema D3D12. Separatamente, vengono sviluppati componenti per garantire che OpenCL funzioni su D3D12, inclusi il compilatore OpenCL e il runtime OpenCL.

Infine se sei interessato a saperne di più, puoi controllare i dettagli nel seguente link


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.