Microsoft + Collabora Working To Map OpenGL/OpenCL Over DirectX 12
Microsoft and Collabora are today announcing a partnership for building OpenCL and OpenGL mapping layers over DirectX (D3D12).
The focus is on providing OpenCL 1.2 and OpenGL 3.3 support for all Windows builds on DirectX 12 enabled devices.
This new initiative is leveraging existing code within Mesa, LLVM, and the SPIRV-LLVM translator for offering OpenGL 3.3 / OpenCL 1.2 over Vulkan. The OpenCL support is being lifted in part by the Clover Gallium3D state tracker. The intent is providing a generic layer that offers any D3D12 enabled system to have OpenGL 3.3 and OpenCL 1.2 access. From Microsoft's perspective, they hope it will help transition developers in porting from older OpenCL/OpenGL to D3D12.
As part of Collabora's work, they are working on a Mesa NIR intermediate representation to Microsoft DXIL shader compiler as well as a Direct3D 12 Gallium3D driver.
At the moment it doesn't appear there are any immediate plans to support OpenCL 2.x or OpenGL 4.x by this work. It does still appear they have some ways to go on achieving the OpenGL 3.3 and OpenCL 1.2 conformance. Once the code is in better shape, they do intend to upstream the relevant Mesa portions.
More details on this Microsoft partnership via the Collabora blog.
The focus is on providing OpenCL 1.2 and OpenGL 3.3 support for all Windows builds on DirectX 12 enabled devices.
This new initiative is leveraging existing code within Mesa, LLVM, and the SPIRV-LLVM translator for offering OpenGL 3.3 / OpenCL 1.2 over Vulkan. The OpenCL support is being lifted in part by the Clover Gallium3D state tracker. The intent is providing a generic layer that offers any D3D12 enabled system to have OpenGL 3.3 and OpenCL 1.2 access. From Microsoft's perspective, they hope it will help transition developers in porting from older OpenCL/OpenGL to D3D12.
As part of Collabora's work, they are working on a Mesa NIR intermediate representation to Microsoft DXIL shader compiler as well as a Direct3D 12 Gallium3D driver.
At the moment it doesn't appear there are any immediate plans to support OpenCL 2.x or OpenGL 4.x by this work. It does still appear they have some ways to go on achieving the OpenGL 3.3 and OpenCL 1.2 conformance. Once the code is in better shape, they do intend to upstream the relevant Mesa portions.
More details on this Microsoft partnership via the Collabora blog.
51 Comments