Collabora devlope yon adisyon pou kouri OpenCL ak OpenGL sou tèt DirectX

Collabora konpayi prezante yon nouvo chofè Gallium pou Mesa, ki aplike yon kouch pou òganize travay OpenCL 1.2 ak OpenGL 3.3 API sou tèt chofè ki sipòte DirectX 12 (D3D12). Kòd pibliye anba lisans MIT.

Chofè yo pwopoze a pèmèt ou sèvi ak Mesa sou aparèy ki pa natif natal sipòte OpenCL ak OpenGL, epi tou kòm yon pwen depa pou pòte aplikasyon OpenGL/OpenCL pou kouri sou D3D12. Pou manifaktirè GPU, subsistèm nan fè li posib pou bay sipò pou OpenCL ak OpenGL, si sèlman chofè ki gen sipò D3D12 ki disponib.

Pami plan imedya yo se reyalizasyon konplè pase tès konpatibilite OpenCL 1.2 ak OpenGL 3.3, tcheke konpatibilite ak aplikasyon yo ak enklizyon devlopman nan konpozisyon prensipal Mesa. Devlopman fèt ansanm ak enjenyè Microsoft devlope louvri zouti D3D11On12 pou transfere jwèt soti nan D3D11 nan D3D12 ak bibliyotèk D3D12TranslationLayer, ki aplike estanda grafik primitif sou tèt D3D12.

Aplikasyon an gen ladann chofè Gallium, OpenCL du, OpenCL exécution ak NIR-a-DXIL shader du, ki konvèti reprezantasyon entèmedyè NIR shaders yo itilize nan Mesa nan fòma binè DXIL (DirectX Intermediate Language), ki sipòte nan DirectX 12 epi ki baze sou LLVM 3.7 bitkod (Compiler DirectX Shader soti nan Microsoft se esansyèlman yon fouchèt pwolonje nan LLVM 3.7). Konpilateur OpenCL a prepare dapre devlopman pwojè LLVM ak zouti yo SPIRV-LLVM.

Sous ak ekstansyon OpenCL yo konpile lè l sèvi avèk clang nan LLVM entèmedyè pseudocode (LLVM IR), ki se Lè sa a, konvèti nan yon reprezantasyon entèmedyè nan nwayo OpenCL nan fòma SPIR-V. Nwayo nan reprezantasyon SPIR-V yo pase nan Mesa, tradui nan fòma NIR, optimize epi pase nan NIR-a-DXIL pou jenere shaders kalkile nan fòma DXIL, apwopriye pou ekzekisyon sou GPU lè l sèvi avèk DirectX 12 ki baze sou ègzekutabl.
Olye Clover, aplikasyon OpenCL yo itilize nan Mesa, yo pwopoze yon nouvo tan OpenCL, ki pèmèt plis konvèsyon dirèk nan DirectX 12 API.

Collabora devlope yon adisyon pou kouri OpenCL ak OpenGL sou tèt DirectX

Chofè OpenCL ak OpenGL yo prepare lè l sèvi avèk koòdone Gallium yo bay nan Mesa, ki pèmèt ou kreye chofè san w pa antre nan detay espesifik OpenGL epi tradui apèl OpenGL an esansyèl pi pre grafik primitif GPU modèn yo opere sou yo. Chofè Gallium, aksepte kòmandman OpenGL ak lè w ap itilize tradiktè NIR-a-DXIL la
jenere tanpon lòd ki egzekite sou GPU lè l sèvi avèk chofè D3D12 la.

Sous: opennet.ru

Add nouvo kòmantè