Soporte para GPU: ¿Qué novedades hay por parte de Mesa 17.1 y NVIDIA 381.22?
Recientemente han aparecido Mesa 17.1 y la versión 381.22 del driver de NVIDIA para mejorar el desempeño de GNU/Linux a nivel de GPU. En esta ocasión se puede destacar la equiparación del soporte de Ivy Bridge con respecto a Windows y las nuevas extensiones de Vulkan añadidas en NVIDIA.
Mesa 17.1
De la última versión de la implementación libre de OpenGL y otras de Vulkan se puede destacar lo siguiente:
- El soporte para OpenGL 4.2 ha llegado a Ivy Bridge (la serie 3000 de Intel Core). Con este salto se coloca el soporte para GNU/Linux al nivel de los drivers de Windows, MacOS y Android.
- El driver RADV, que es la implementación libre de Vulkan para GPU AMD, ha superado las pruebas de Khronos Group para su conformidad, aunque de momento no hay ratificación oficial.
- La caché de shader sobre disco mejora los tiempos de inicio y compilación de shaders en algunos juegos.
- Se ha incluido una gran cantidad de mejoras a nivel de rendimiento procedentes de Feral Interactive, sí, esos que se molestan tanto en portar juegos a Linux y Mac. Obviamente, esos aportes impactarán sobre todo en los juegos.
- Se ha añadido una cantidad nada despreciable de extensiones de Vulkan en ANV (Intel) y RADV (AMD).
- Se ha incluido soporte inicial para AMD Radeon RX Vega, aunque cuidado, porque requiere usar Linux 4.12 y hasta Linux 4.13 parece que no empezará a ser plenamente funcional.
Nouevau también recibe mejoras por parte de Mesa 17.1, destacando la inclusión del soporte para la segunda generación de GPU Pascal. Sin embargo, está claro que NVIDIA no parece estar muy dispuesta a poner de su parte para impulsarlo, además de que el crecimiento de Vulkan puede dejar al propio Nouveau contra las cuerdas. Viendo la situación, es obvio que Mesa ha quedado como una referencia solo para los usuarios de Intel y AMD.
NVIDIA 381.22
Mientras que los usuarios de Intel y AMD tienen como referencia a Mesa y los drivers incluidos en el kernel Linux, los usuarios de NVIDIA se ven forzados a usar el driver privativo y oficial de la compañía de Santa Clara.
De NVIDIA 381.22 se puede destacar la mejora del soporte para versiones recientes del kernel Linux, entre las cuales están la 4.10 y la 4.11. También cabe destacar la inclusión de una importante cantidad de extensiones de Vulkan, aunque se requiere de la versión 1.0.42 de la API o superior para poder utilizarlas. Por otro lado, las optimizaciones de enhebrado de OpenGL han sido desactivadas por defecto debido que no son lo suficientemente estables.
Explicándolo de forma basta, se puede decir que el driver de NVIDIA se coloca “encima” del soporte ofrecido por Mesa y los drivers para GPU del kernel (al menos que use Optimus o algo parecido). Esto quiere decir que el soporte a nivel de driver, OpenGL y Vulkan depende del blob oficial y la versión de Vulkan que se tenga instalada, quedando Mesa ignorado.
Fuentes: Lista de correo de Freedesktop, Phoronix y Softpedia