Con el objetivo de reemplazar por completo los controladores de código cerrado, NVIDIA ha anunciado su transición completa a módulos de kernel de GPU de código abierto. En futuras versiones se mejorará la compatibilidad de GeForce y Workstation con Linux, con vistas a suprimir gradualmente los controladores propietarios.
NVIDIA dio inicio en mayo de 2022 a la publicación de módulos del kernel de la GPU de código abierto bajo un modelo de licencia dual GPL/MIT, empezando por el controlador R515. Esta iniciativa permite a los desarrolladores localizar rutas de código y comprender las interacciones de la programación de eventos del kernel con sus cargas de trabajo, lo que facilita una depuración más rápida de la causa raíz.
Según NVIDIA, tras más de dos años de desarrollo, el módulo del kernel de la GPU de código abierto ha conseguido un rendimiento equivalente o superior al de los controladores de código cerrado. Asimismo, ha incorporado numerosas funciones nuevas, entre ellas:
- Heterogeneous Memory Management (HMM) (Gestión Heterogénea de la Memoria)
- Confidential Computing (Computación Confidencial)
- Grace Plataform Consistent Memory Arquitecture (Arquitectura de Memoria Coherente con la Plataforma Grace)
Cabe señalar que no todas las GPUs son compatibles con los módulos de código abierto del kernel de la GPU. Desde NVIDIA especifican que los usuarios de plataformas punteras como Grace Hopper o Blackwell deben hacer uso de los módulos de código abierto, ya que dichas plataformas no admiten controladores propietarios.
En el caso de las GPUs más recientes basadas en arquitecturas Turing, Ampere, Ada Lovelace o Hopper, NVIDIA recomienda utilizar los módulos del kernel de la GPU de código abierto. Para GPUs más veteranas, como las arquitecturas Maxwell, Pascal o Volta, que no son compatibles con la plataforma de código abierto, los usuarios deben seguir utilizando los controladores propietarios de NVIDIA.
La transición a módulos del kernel de la GPU de código abierto ofrece importantes ventajas tanto para los desarrolladores como para las empresas. Los desarrolladores obtienen visibilidad de las rutas del código, lo que les permite comprender mejor las interacciones del kernel con las cargas de trabajo.
Gracias a esta transparencia, los procesos de depuración y optimización resultan más eficaces. En cuanto a los desarrolladores de software empresarial, la posibilidad de integrar controladores en núcleos Linux personalizados mejora la flexibilidad y garantiza una mejor alineación con los requisitos específicos del proyecto.
Vía: Guru3D