Mesa 27.0 va a cambiar la forma en que las GPU Arm Mali procesan los gráficos en Linux. El proyecto ha confirmado que Kraid pasará a ser el compilador de shaders por defecto en los controladores Panfrost y PanVK, sustituyendo al motor que se usaba hasta ahora. El cambio ya funciona en la rama de desarrollo y promete generar menos instrucciones y acelerar la carga de juegos y aplicaciones.
Kraid lleva meses en desarrollo como alternativa moderna a los compiladores gráficos tradicionales para las GPU Arm Mali recientes. El equipo lo integró por primera vez en Mesa 26.2 el pasado mes de junio y, con la rama Mesa 27.0-devel, lo convierte ya en la opción predeterminada para los controladores Panfrost Gallium3D y PanVK en las GPU Arm Mali v9/Valhall y posteriores. Os contamos qué cambia con este salto y cuánto mejora el rendimiento, según ha detallado el proyecto Mesa en el anuncio técnico publicado en el blog de Collabora, la empresa que lidera buena parte del desarrollo de estos controladores gráficos libres para Arm.
Qué cambia en Mesa 27.0 con el compilador Kraid
Mesa 27.0 convierte a Kraid en el compilador de shaders predeterminado para las GPU Arm Mali recientes, sustituyendo al motor anterior en los controladores Panfrost Gallium3D y PanVK. El cambio alcanza a las GPU Arm Mali v9/Valhall y a las generaciones posteriores, unificando bajo el mismo motor tanto el camino OpenGL como el Vulkan.
Panfrost Gallium3D, el controlador de Mesa para OpenGL en gráficas Mali, ejecuta los shaders con Kraid en todo el hardware compatible, lo que agiliza juegos y aplicaciones que dependen de esta API. PanVK, el equivalente para Vulkan, sigue el mismo camino y permite que los títulos que usan esta API moderna aprovechen la nueva arquitectura de compilación. No se precisa qué ocurre con las generaciones de Mali anteriores a Valhall, que de momento quedarían fuera de este cambio hasta que las distribuciones empaqueten Mesa 27.0.
Esta unificación simplifica el trabajo de quienes mantienen Panfrost y PanVK, porque ambos controladores comparten ahora la misma lógica de generación de código para el hardware compatible, algo que nos facilita seguir la evolución de ambos proyectos con una sola referencia técnica.
Cuánto mejora el rendimiento con Kraid en las GPU Mali
Para shaders de OpenGL, Kraid reduce casi un 20 % las instrucciones generadas respecto al compilador anterior. En rendimiento puro de juegos y aplicaciones, logra entre unos pocos puntos porcentuales más de fotogramas por segundo en los benchmarks de OpenGL y Vulkan analizados por el propio proyecto Mesa.
La ganancia más relevante no está en los FPS sino en la velocidad de compilación: Kraid genera el código de los shaders de forma más rápida y eficiente, lo que reduce los tiempos de espera al cargar nuevos niveles o texturas en los juegos. Estas cifras son generales y no se desglosan por modelo concreto de GPU ni por título específico.
Un compilador de shaders es la pieza del controlador gráfico que traduce los efectos visuales de los juegos a instrucciones que entiende la GPU, y de su calidad depende buena parte del rendimiento y de los tirones al cargar nuevas escenas. Kraid modela con mayor precisión que su predecesor cómo acceden a los registros las GPU Mali v9/Valhall y las que han llegado después, lo que explica esa mejora tanto en velocidad de compilación como en eficiencia del código final.
Cuándo llegará Kraid a todos los usuarios de Linux
El cambio ya funciona en la rama de desarrollo Mesa 27.0-devel, pero llegará a los usuarios finales cuando se publique la versión estable de Mesa 27.0, prevista para el primer trimestre según el calendario del propio proyecto. Hasta entonces, solo quienes compilan Mesa desde las ramas de desarrollo pueden probarlo.
A partir de ese lanzamiento estable, cada distribución de Linux tardará un tiempo distinto en empaquetarlo, según sus propios ciclos de actualización y las pruebas de estabilidad que apliquen sus equipos de mantenimiento. Quienes usáis GPU Mali Valhall o más recientes con los controladores libres de Mesa notaréis shaders más eficientes y una carga más ágil de los contenidos sin tener que cambiar ninguna configuración.
No hay opción de desactivarlo manualmente: su adopción será automática en todo el hardware soportado en cuanto Mesa 27.0 pase de la rama de desarrollo a la versión estable, el hito que marcará la llegada real de Kraid a los equipos de los usuarios de Linux.
