No todos los dispositivos Windows tienen un gran soporte para OpenCL y OpenGL mediante aceleración por hardware. Por lo tanto, a los desarrolladores de juegos a menudo les resulta difícil admitir juegos OpenGL en Windows.
OpenCL y OpenGl llegan a Windows 10
Con el fin de mejorar la compatibilidad de aplicaciones, Collabora está desarrollando una solución genérica a este problema. En asociación con Microsoft, Collabora está creando capas de asignación OpenCL y OpenGL para llevar la compatibilidad con OpenCL 1.2 y OpenGL 3.3 a todos los dispositivos habilitados para Windows y DirectX 12. Con estas nuevas capas de asignación, un proveedor de GPU puede implementar un controlador D3D12 para su hardware y admitir API DirectX, OpenCL y OpenGL.
El trabajo de Collabora se divide en gran medida en tres partes: un compilador OpenCL, un tiempo de ejecución de OpenCL y un controlador de Gallium que compila y ejecuta búferes de comandos en la GPU mediante la API D3D12.
Además, hay un compilador de sombreador esnIF compartido a DXIL que ambos componentes utilizan. Para aquellos que no están familiarizados con NIR, es la representación interna de Mesa para sombreadores GPU. Del mismo modo, DXIL es la representación interna de Microsoft, que los controladores D3D12 consumirán y traducirán en sombreadores específicos de hardware.