Valve está financiando a ingenieros de Collabora en un trabajo de fase temprana y exploratoria para llevar el driver Vulkan de código abierto para GPUs Radeon, conocido como RADV, desde Linux a Microsoft Windows.
RADV forma parte de Mesa, la implementación abierta del stack gráfico de Linux, e implementa la API Vulkan para tarjetas AMD. Es el controlador que usan los jugadores de Linux y una pieza central del éxito de la Steam Deck y ahora de la Steam Machine. Valve ya financia a varios desarrolladores que trabajan en RADV y en otras partes del stack gráfico de Linux; el paso nuevo es intentar que ese mismo driver sea viable en Windows.
¿Cuál es el gran desafío técnico?
Louis-Francis Ratté-Boulianne publicó una entrada de blog donde detalla el trabajo inicial. Además de la integración con WDDM2 (el modelo de controladores de pantalla de Windows), el mayor obstáculo es que el port debe apoyarse en el controlador de kernel propietario de AMD Radeon Software para Windows.
Portar el driver de kernel de Linux (AMDGPU) a Windows queda fuera del alcance de este trabajo. En su lugar, el equipo busca que RADV funcione sobre el controlador de kernel oficial de AMD en Windows. Eso obliga a hacer ingeniería inversa para entender las estructuras de datos y otros elementos de ese driver cerrado, de modo que RADV pueda adaptarse a él.
¿Qué falta para que sea usable?
Para que la solución realmente funcione bien, los desarrolladores necesitan una de dos cosas: una interfaz estable y documentada hacia el controlador de kernel de AMD en Windows, o bien una biblioteca intermedia (shim) que se ubique entre RADV y ese driver y absorba los cambios no documentados entre versiones del Radeon Software.
Pese a lo temprano del trabajo, hay una señal concreta de avance: según muestra la entrada de blog de Collabora, el equipo ya consiguió demostrar Counter-Strike 2 corriendo con RADV sobre Windows. El código experimental está disponible en una rama de desarrollo pública del repositorio de Mesa.


