El tema de Microsoft y Linux es digno de estudio. Inicialmente, Linux y Windows eran enemigos acérrimos y se criticaban mutuamente. Siempre recordaremos las sutiles palabras de Steve Ballmer llamando a Linux cáncer. Ahora con Satya Nadella todo ha cambiado y lejos de criticar a Linux abrazan la tecnología de software libre y se utiliza en múltiples áreas. Lo último, están portando ciertas áreas de DirectX 12 a Linux.
DirectX 12 no llegará a Linux, al menos no en su totalidad
En primer lugar, debemos dejarlo claro, Microsoft no tiene intención de ofrecer DirectX 12 en Linux. La industria está apostando bastante hacia APIs gráficas de código abierto como Vulkan. Un software multiplataforma de alto rendimiento como Vulkan permite un funcionamiento excepcional en Doom Eternal y permite que títulos de bajo presupuesto como Farming Simulator 22 funcionen en Mac OS X y Linux.
No es un secreto que Microsoft ha vinculado DirectX a Xbox y Windows. Lo sorprendente es que están explorando Mesa, Linux y la implementación de software de código abierto de OpenGL. Jesse Natalie, Ingeniero Principal de Software de Microsoft, está trabajando en la incorporación y mejora del soporte de computación D3D12 en OpenGL a través de Mesa. Además, deja entrever que habrá futuras mejoras en proyecto. De la solicitud de fusión de Jesse:
Esto añade un seguimiento de estado paralelo para el cálculo. En algunos casos, el seguimiento del estado de los gráficos es simplemente extendido (por ejemplo, los recursos vinculados a los sombreadores), en otros, se duplica (por ejemplo, las cachés adicionales de la tubería), y en otros se refactoriza. El resultado final es el soporte de computación ARB_compute_shader con un camino un poco lento para los indirectos. Ahora que el soporte de computación está disponible, podemos empezar a conectar los shaders de computación para cosas que necesitan emulación en el futuro, como una ruta más rápida para los envíos indirectos que necesitan vars de estado.
Aunque el propósito del soporte de sombreadores de computación D3D12 en Mesa no está claro, podría ser ventajoso en datacenters. Quizás en Azure, donde Microsoft ofrece VMs optimizadas para GPU para cargas de trabajo que requieren una configuración personalizada.