Este año, ya hemos visto filtraciones considerables del código fuente de NVIDIA y un lanzamiento de controladores de código abierto para NVIDIA Tegra. Parece que NVIDIA decidió ampliarlo y acaba de lanzar módulos de kernel de GPU de código abierto para Linux. El enlace de GitHub nombrado open-gpu-kernel-moduleshace que la gente se regocije, y ya estamos probando el código, creando memes y especulando sobre el futuro. Actualmente se afirma que este controlador es experimental, solo "listo para producción" para tarjetas de centros de datos, ¡pero ya puede probarlo!
EL ESTADO ACTUAL DEL CONDUCTOR
Por supuesto, hay matices. Este es un código nuevo y no está relacionado con el conocido controlador propietario. Solo funcionará en tarjetas a partir de las series RTX 2000 y Quadro RTX (también conocidas como Turing y en adelante). La buena noticia es que el rendimiento es comparable al del controlador de código cerrado, ¡incluso en este punto! Una peculiaridad de este proyecto: una buena parte de las características que los controladores AMD e Intel implementan en el kernel de Linux son, en cambio, proporcionadas por una burbuja binaria desde el interior de la GPU. Este blob se ejecuta en el GSP, que es un núcleo RISC-V que solo está disponible en GPU Turing y más jóvenes, de ahí la limitación de la serie. Ahora, cada GPU carga una pieza de firmware, ¡pero esta es pesada!
Salvo eso, este controlador ya proporciona una integración más coherente en el kernel de Linux, con beneficios masivos que solo aumentarán en el futuro. No todo está abierto todavía: las bibliotecas de espacio de usuario de NVIDIA y los controladores OpenGL, Vulkan, OpenCL y CUDA permanecen cerrados, por ahora. Lo mismo ocurre con el antiguo controlador patentado de NVIDIA que, supongo, se dejaría pudrir, apropiado, ya que "dejar pudrirse" es lo que ese controlador ha hecho previamente con generaciones de tarjetas antiguas pero perfectamente utilizables.
EL FUTURO POTENCIAL
El upstreaming de este controlador será un esfuerzo gigantesco sin duda, pero ese es definitivamente el objetivo, y los beneficios también serán considerables. Incluso tal como está, este controlador tiene mucho más potencial. Al igual que un policía británico, el kernel de Linux verifica la licencia de cada módulo del kernel que carga y limita las API que puede usar si no tiene licencia GPL, lo que no era el controlador anterior de NVIDIA, ya que sus partes abiertas eran esencialmente una capa delgada entre el kernel y los controladores binarios y, por lo tanto, no es licenciable por GPL. Debido a que este controlador tiene licencia MIT/GPL, ahora tienen un conjunto más grande de interfaces a su disposición y podrían integrarlo mejor en el ecosistema de Linux en lugar de tener un conjunto de herramientas propietarias.
Las capacidades de depuración, la seguridad y el potencial de integración general deberían mejorar. Además de eso, hay un montón de nuevas posibilidades abiertas. Para empezar, definitivamente abre la puerta para portar el controlador a otros sistemas operativos como FreeBSD y OpenBSD, e incluso podría ayudar a la computación libre. La compatibilidad con NVIDIA GPU en ARM será más fácil en el futuro, y podríamos ver esfuerzos más interesantes para aprovechar lo que las GPU nos ayudan cuando se combinan con un SBC ARM, desde videojuegos emocionantes hasta aprendizaje automático potente. El lanzamiento de Red Hat dice que hay más por venir en términos de integrar correctamente los productos de NVIDIA en el ecosistema de Linux, sin mover piedras.
En general, verá que todos saludan esto, por buenas razones. La tradición es que celebramos estos movimientos radicales, aunque sean imperfectos, de las grandes empresas, y con razón, dados los beneficios que acabo de enumerar y el potencial futuro. A medida que veamos más movimientos de este tipo por parte de grandes jugadores, tendremos muchas cosas de las que alegrarnos, y una gran cantidad de problemas quedarán en el pasado. Sin embargo, cuando se trata de apertura por lo que valoramos, la situación se vuelve un poco extraña y difícil de manejar.
ESPERA, ¿QUÉ SIGNIFICA APERTURA?
La apertura nos ayuda a agregar funciones que necesitamos, solucionar problemas que encontramos, aprender cosas nuevas del trabajo de otros y explorar los límites, a medida que interactuamos con la tecnología que define cada vez más nuestras vidas. Si hay que creer en toda la emocionante ciencia ficción que leemos cuando éramos niños, estamos destinados a trabajar en conjunto con la tecnología. Este controlador, en muchos sentidos, no es el tipo de apertura que ayuda a que nuestro hardware nos ayude, pero ciertamente marca muchas casillas para lo que percibimos como "abierto". ¿Cómo llegamos aquí?
Es bien sabido que abrir cada parte del código no es lo que hacen las grandes empresas: debe ocultar los bits DRM y las violaciones de patentes en alguna parte. Aquí, gran parte del código que solía residir en el controlador propietario ahora se ejecuta en una CPU diferente y es tan poco transparente como antes. Ningún controlador se basa tanto en el código de blob binario como este y, sin embargo, solo un poco irónicamente, no está tan lejos de donde técnicamente podría obtener la certificación RYF. Es solo que los blobs binarios objetables ahora son "firmware" en lugar de "software".
La certificación RYF (Respects Your Freedom) de la Free Software Foundation, aunque bien intencionada, últimamente ha sido objeto de críticas por ser contraproducente para sus objetivos y hacer que el hardware sea más complejo sin necesidad, e incluso el líder del proyecto Libreboot dice que sus principios dejan de ser deseado. Hemos estado tomando implícitamente la certificación RYF como la guía de apertura por la que luchar, pero la computadora portátil Novena decidió no adherirse a ella y ciertamente está mejor. Tenemos mucho que aprender de RYF y está bastante claro que necesitamos más ayuda.
A partir de aquí, ¿qué tomamos como “abierto”? ¿Y quién puede ayudarnos a hacer un seguimiento de lo que es "abierto", específicamente, el tipo de apertura que nos mueve hacia un mundo más utópico pero realista donde nuestra relación con la tecnología es sana y amorosa? Algunas pautas y principios nos ayudan a verificar si nos mantenemos en el camino correcto, y el mundo ha cambiado lo suficiente como para que las viejas ideas no siempre se apliquen, al igual que con la laguna del software alojado en la nube que resulta difícil de resolver.
Pero aún así, se acaba de abrir mucho más código, y esto es una victoria en algunos frentes. Al mismo tiempo, no llegaremos a donde queremos estar si otras empresas deciden apegarse a este ejemplo y, como piratas informáticos, no lograremos muchas de las cosas innovadoras que nos verá alcanzar con herramientas de código abierto. en nuestras manos. Y, si no tenemos cuidado, podríamos confundir esto con el tipo de apertura de la que todos venimos a aprender. Así que es una bolsa mixta.
TODAVÍA ATORMENTANDO UN POCO NUESTRO PASADO
Como se mencionó, este controlador es para la serie 2000 RTX y posteriores. Las tarjetas antiguas todavía están limitadas al controlador propietario o Nouveau, que tiene un historial de ser obstaculizado por NVIDIA. Caso en cuestión: en los últimos años, NVIDIA ha vuelto a implementar funciones vitales como el control del reloj de una manera a la que solo se puede acceder a través de una corrección de firmware firmada con una API cerrada que es difícil de aplicar ingeniería inversa y no ha cooperado desde entonces, lo que ha perjudicado al proyecto Nouveau sin remedio a la vista. A diferencia de AMD ayudando a revisar el código de las tarjetas lanzadas antes de que se cayera su controlador abierto, este problema persistirá.
Sin embargo, a partir de aquí, Nouveau vivirá. En parte, seguirá siendo utilizable para tarjetas más antiguas que no van a ninguna parte y, en parte, parece que podría ayudar a reemplazar las bibliotecas de espacio de usuario antes mencionadas que siguen siendo de código cerrado. La página de lanzamiento oficial de NVIDIA dice que no es imposible que los esfuerzos de Nouveau y los esfuerzos de controladores abiertos de NVIDIA puedan fusionarse en uno, una victoria para todos, aunque sea un poco agridulce.
Debido a la escasez, es posible que no obtenga una GPU para ejecutar este controlador de todos modos. Dicho esto, nos recuperaremos de la escasez y la locura inducida por la minería, y los precios bajarán hasta el punto en que nuestros sistemas funcionarán mejor, tal vez no su computadora portátil equipada con MX150, pero ciertamente muchos sistemas potentes que aún tenemos que construir. NVIDIA aún no está donde están AMD e Intel, pero están llegando allí.
Historias relacionadas :
Ciberdelicuentes : está amenazando con filtrar el código fuente de Nvidia
Nvidia presenta su propio tablet con el sistema Android
[Fuente]: hackaday.com
Christian Wiediger.( 13 de Mayo de 2022).NVIDIA. Modificado por Carlos Zambrado Recuperado unsplash.com