Collabora entwéckelt en Add-on fir OpenCL an OpenGL uewen op DirectX ze lafen

Firma Collabora presentéiert en neie Gallium Chauffer fir Mesa, deen eng Schicht implementéiert fir d'Aarbecht vun den OpenCL 1.2 an OpenGL 3.3 APIen ze organiséieren uewen op Treiber déi DirectX 12 (D3D12) ënnerstëtzen. Code publizéiert ënner der MIT Lizenz.

De proposéierte Chauffer erlaabt Iech Mesa op Apparater ze benotzen déi net natiirlech OpenCL an OpenGL ënnerstëtzen, an och als Startpunkt fir OpenGL / OpenCL Uwendungen ze portéieren fir uewen op D3D12 ze lafen. Fir GPU Hiersteller mécht de Subsystem et méiglech Ënnerstëtzung fir OpenCL an OpenGL ze bidden, wann nëmmen Chauffeuren mat D3D12 Support verfügbar sinn.

Ënnert den direkten Pläng sinn d'Erreeche vum vollen Duerchgang vun den Kompatibilitéitstester vun OpenCL 1.2 an OpenGL 3.3, Iwwerpréiwung vun der Kompatibilitéit mat Uwendungen an d'Inklusioun vun Entwécklungen an der Haaptkompositioun vu Mesa. Entwécklung gëtt zesumme mat Microsoft Ingenieuren entwéckelt opgemaach Tools D3D11On12 fir Transfert Spiller aus D3D11 ze D3D12 a Bibliothéik D3D12 Iwwersetzung Layer, déi Standard grafesch Primitiven uewen op D3D12 implementéiert.

D'Implementatioun enthält de Gallium Treiber, OpenCL Compiler, OpenCL Runtime an NIR-zu-DXIL Shader Compiler, deen d'Zwëschenvertriedung vun NIR Shaders benotzt an Mesa an den DXIL (DirectX Intermediate Language) binäre Format konvertéiert, ënnerstëtzt an DirectX 12 a baséiert op LLVM 3.7 bitcode (DirectX Shader Compiler vu Microsoft ass wesentlech eng verlängert Gabel vu LLVM 3.7). Den OpenCL Compiler ass virbereet op Basis vun den Entwécklungen vum LLVM Projet an Tools SPIRV-LLVM.

Quelle mat OpenCL Extensiounen ginn kompiléiert mat Klang an LLVM Zwëschen Pseudocode (LLVM IR), deen dann an eng Zwëschenvertriedung vun OpenCL Kernels am SPIR-V Format ëmgewandelt gëtt. Cores an der SPIR-V Representatioun ginn an Mesa iwwersat, an NIR Format iwwersat, optimiséiert an op NIR-zu-DXIL weidergeleet fir Computer Shaders am DXIL Format ze generéieren, gëeegent fir Ausféierung op GPUs mat DirectX 12-baséiert Runtime.
Amplaz vu Clover, d'OpenCL-Implementatioun déi a Mesa benotzt gëtt, gëtt eng nei OpenCL Runtime proposéiert, déi méi direkt Konversiounen op d'DirectX 12 API erlaabt.

Collabora entwéckelt en Add-on fir OpenCL an OpenGL uewen op DirectX ze lafen

OpenCL an OpenGL Chauffeuren gi virbereet mat der Gallium Interface, déi am Mesa geliwwert gëtt, wat Iech erlaabt Chauffeuren ze kreéieren ouni an OpenGL-spezifesch Detailer ze goen an OpenGL Uriff am Wesentlechen méi no un d'Grafikprimitiven ze iwwersetzen, déi modern GPUs operéieren. Gallium Chauffer, akzeptéiert OpenGL Kommandoen a wann Dir den NIR-zu-DXIL Iwwersetzer benotzt
generéiert Kommandobuffer déi op der GPU mam D3D12 Chauffer ausgefouert ginn.

Source: opennet.ru

Setzt e Commentaire