Si bien el hecho de que Nouveau recién mencionado comience a obtener soporte de código abierto GeForce RTX 30″Ampere”es emocionante, como se mencionó, todavía hay obstáculos que superar para tener un buen rendimiento del controlador NVIDIA de código abierto en las GPU modernas. Una noticia igualmente emocionante es que Nouveau ha comenzado a adaptar parte de su código en una biblioteca independiente para que pueda ser utilizado en el futuro por otros controladores nuevos.

En los últimos días se ha comenzado a trabajar en la reestructuración del código del controlador Nouveau Mesa en torno a la generación de código para que pueda vivir en una biblioteca independiente.

Esto es simplemente resumido en este momento por David Airlie de Red Hat como:”Esto simplemente mueve la compilación de generación de código a una biblioteca separada, esto es solo un trabajo de preparación para un futuro en el que otros conductores quieran reutilizar este código Esto no es perfecto para conectarlo a un controlador Vulkan, pero hacerlo requiere una cirugía más profunda”.

Básicamente, este esfuerzo actual está moviendo la generación de código del controlador a una biblioteca independiente dentro de Mesa para que pueda ser reutilizado fácilmente por otro código futuro fuera de Nouveau Gallium3D. Entre los usos más probables de esta biblioteca independiente se incluyen:

-Trabajar en un controlador Nouveau Vulkan mientras se comparte la generación de código del compilador de shaders entre controladores… Además del rendimiento, la falta de un controlador NVIDIA Vulkan de código abierto ha sido uno de los los grandes puntos sensibles para el esfuerzo de Nouveau en 2022 con la mayoría de los juegos de Linux, ya sea de forma nativa o mediante Steam Play, capaces de hacer uso de la API de Vulkan.

-Trabajando en un nuevo controlador Mesa para hacer uso del controlador kernel de código abierto recientemente de NVIDIA. Esto es muy probable también. Básicamente, con todas las interfaces de kernel cambiadas al comparar el controlador DRM/KMS de Nouveau con el nuevo controlador de kernel de NVIDIA en el que han estado trabajando, puede ser más fácil comenzar desde una pizarra más limpia/transformar el código del controlador de Nouveau en un nuevo controlador separado que explícitamente apunta a ese nuevo controlador de kernel. Este nuevo controlador también podría enfocarse solo en las GPU Turing más nuevas y más allá compatibles con ese controlador de kernel y eliminar todo el soporte antiguo/heredado y otras fallas que se han acumulado dentro del código de Nouveau Mesa a lo largo de los años.

O muy posiblemente, ambos escenarios.

Como se describió en los artículos anteriores de código abierto de NVIDIA, si NVIDIA quiere que su nuevo controlador de kernel de código abierto finalmente se integre en el kernel de Linux ascendente, necesitará un controlador de espacio de usuario de código abierto que ejercita todas las interfaces del kernel expuestas… Dado que es poco probable que NVIDIA abra sus controladores de código cerrado OpenGL o Vulkan, a través de los ingenieros de NVIDIA y sus socios de Red Hat, tendrían que idear el uso del controlador Mesa de este nuevo controlador del kernel–ya sea adaptando su código Nouveau Gallium3D existente para admitir ese controlador del kernel o, a juzgar por esta reestructuración del código Mesa, podría venir en forma de un nuevo controlador Mesa.

En cualquier caso, el cambio pendiente para mover el la generación de código en una biblioteca independiente es solo un pequeño paso inicial del esfuerzo mucho mayor de incorporar cualquier nuevo controlador NVIDIA de código abierto dentro de Mesa. Tal como está hoy, ese código pendiente no tiene un impacto inmediato en los usuarios finales. Al menos está sucediendo y Red Hat continúa asociado con NVIDIA en este esfuerzo de controladores de código abierto de varios años.

Mientras tanto, en lo que respecta al controlador de kernel DRM/KMS ascendente de Nouveau, no ha habido ningún trabajo importante sobre el que informar en los últimos tiempos. Lo más probable es que veamos que el controlador se estanca aún más y permanece disponible para aquellos con GPU anteriores a Turing que desean usar el controlador de código abierto… Sin embargo, como recordatorio, este controlador solo es práctico y eficaz para GeForce GTX 600/700 GPU”Kepler”y hardware GTX 750″Maxwell1″donde se puede lograr un nuevo reloj para alcanzar los estados de rendimiento más altos. Los ingenieros de Red Hat son los principales contribuyentes al controlador de kernel de Nouveau durante los últimos años y si centran todos sus recursos en este controlador de kernel de código abierto de NVIDIA moderno, no esperen que se produzca mucha actividad de código en el futuro para ese controlador de código abierto. fuente, controlador kernel de ingeniería inversa.

Estén atentos a Phoronix a medida que evoluciona este moderno esfuerzo de controlador de código abierto de NVIDIA; es probable que aún pasen bastantes meses antes de que el controlador de kernel de código abierto de NVIDIA sea un candidato para integrarse en el kernel.

Categories: IT Info