La marca verde vuelve a apostar por este sistema operativo (con mil y una distribuciones) lanzando unos controladores de código abierto para el uso de su gran comunidad.
Nvidia anunció que los módulos del kernel de la GPU de Linux se volverán Open-Source (de código abierto) bajo la licencia dual GPL/MIT, a partir de la versión del controladores GeForce 515.xx. El código fuente de estos módulos del kernel lo podrás encontrar en el repositorio Nvidia Open GPU Kernel Modules en GitHub.
NVIDIA lleva mucho tiempo apostando por los jugadores de PC y, más en concreto, para todos aquellos que juegan en un ordenador equipado con Windows, dejando de lado hace un tiempo a Linux y todas sus distribuciones por su uso residual entre jugadores, algo que aprovechó AMD para posicionar sus gráficas Radeon como la principal alternativa entre los usuarios de Linux gracias a una buena integración de sus drivers.
Sin embargo, parece que ahora NVIDIA quiere deshacer sus pasos y ha lanzado por sorpresa unos drivers de código abierto para Linux a través de licencia GPL/MIT y con el nombre R515 otorgando a la comunidad de Linux sus deseados controladores de código abierto para gráficas NVIDIA.
Esta publicación es un paso importante para mejorar la experiencia de uso de las GPU Nvidia en Linux, para una mayor integración con el sistema operativo y para que los desarrolladores puedan depurar, integrar y contribuir. Para los proveedores de distribución de Linux, los módulos de código abierto aumentan la facilidad de uso.
Estos drivers R515 se han lanzado con la colaboración de NVIDIA con Canonical, SUSE y Red Hat, estando disponibles de forma inminente en estas distros, pudiendo optar por un controlador de código cerrado precompilado o por módulos de kernel de código abierto, siendo el usuario el que escoge qué driver desea instalar en cada momento.
También mejoran la experiencia de uso para firmar y distribuir el controlador de la GPU Nvidia. Canonical y SUSE pueden empaquetar inmediatamente los módulos del kernel abierto con las distribuciones Ubuntu y SUSE Linux Enterprise. Los desarrolladores pueden rastrear las rutas del código y ver cómo la programación de eventos del kernel está interactuando con su carga de trabajo para acelerar la depuración de la causa raíz. Además, los desarrolladores de software empresarial pueden ahora integrar el controlador sin problemas en el núcleo Linux personalizado configurado para su proyecto.
Funcionalidades soportadas
La primera versión de los módulos abiertos del kernel de la GPU es la R515. Junto con el código fuente, se suministran versiones completamente construidas y empaquetadas de los controladores.
Para las GPU de centros de datos de las familias de arquitectura Nvidia Turing y Nvidia Ampere, este código está listo para la producción. Esto ha sido posible gracias a la implantación gradual de la arquitectura de controladores GSP durante el pasado año, diseñada para facilitar la transición a los clientes de NVIDIA. Nos hemos centrado en realizar pruebas en una amplia variedad de cargas de trabajo para garantizar la paridad de funciones y rendimiento con el controlador propietario en modo kernel.
En el futuro, funciones como HMM serán un componente fundamental para la computación confidencial en la arquitectura Nvidia Hopper.
En esta versión de código abierto, el soporte para las GPU GeForce y Workstation es de calidad alfa. Los usuarios de GeForce y Workstation pueden utilizar este controlador en las GPU de arquitectura Turing yNvidia Ampere para ejecutar escritorios Linux y utilizar funciones como las pantallas múltiples, G-SYNC y el trazado de rayos Nvidia RTX en Vulkan y Nvidia OptiX. Los usuarios pueden optar por utilizar el parámetro del módulo del kernel NVreg_EnableUnsupportedGpus, como se destaca en la documentación. El soporte de GeForce y Workstation será más robusto y completo en las siguientes versiones y los módulos de kernel abierto deNvidia acabarán sustituyendo al controlador de código cerrado.
Los clientes con GPUs Turing y Ampere pueden elegir qué módulos instalar. Los clientes anteriores a Turing seguirán utilizando los módulos de código cerrado.
El controlador de código abierto en modo kernel funciona con el mismo firmware y las mismas pilas en modo usuario, como CUDA, OpenGL y Vulkan. Sin embargo, todos los componentes de la pila del controlador deben coincidir con las versiones dentro de una versión. Por ejemplo, no se puede tomar una versión del código fuente, construirla y ejecutarla con la pila de modo de usuario de una versión anterior o futura.