Controladors de vídeo de codi obert NVIDIA per al nucli Linux

NVIDIA ha anunciat que tots els mòduls del nucli inclosos en el seu conjunt de controladors de vídeo propietaris són de codi obert. El codi està obert sota llicències MIT i GPLv2. La possibilitat de crear mòduls s'ofereix per a les arquitectures x86_64 i aarch64 en sistemes amb el nucli Linux 3.10 i versions més recents. El microprogramari i les biblioteques utilitzades a l'espai d'usuari, com ara les piles CUDA, OpenGL i Vulkan, segueixen sent propietaris.

S'espera que la publicació del codi condueixi a una millora significativa en la usabilitat de treballar amb GPU de NVIDIA en sistemes Linux, reforçar la integració amb el sistema operatiu i simplificar el lliurament de controladors i la depuració de problemes. Els desenvolupadors d'Ubuntu i SUSE ja han anunciat la formació de paquets basats en mòduls oberts. La presència de mòduls oberts també simplificarà la integració dels controladors NVIDIA amb sistemes basats en compilacions personalitzades no estàndard del nucli Linux. Per a NVIDIA, el codi obert ajudarà a millorar la qualitat i la seguretat dels controladors de Linux mitjançant una interacció més estreta amb la comunitat i la possibilitat de revisió dels canvis per part de tercers i auditories independents.

Cal assenyalar que la base de codi obert presentada s'utilitza simultàniament en la formació de controladors propietaris, en particular, s'utilitza a la branca beta 515.43.04 publicada avui. En aquest cas, el principal és un repositori tancat i la base de codi obert proposada s'actualitzarà per a cada llançament de controladors propietaris en forma de distribució després de cert processament i neteja. No es proporciona l'historial de canvis individuals, només una confirmació general per a cada versió del controlador (actualment es publica el codi de mòduls per al controlador 515.43.04).

Tanmateix, els membres de la comunitat tenen l'oportunitat d'enviar sol·licituds d'extracció per enviar les seves solucions i canvis al codi del mòdul, però aquests canvis no es reflectiran com a canvis separats al repositori públic, sinó que s'integraran primer al repositori privat principal. i només llavors transferit amb la resta de canvis per obrir. Per participar en el desenvolupament, heu de signar un acord sobre la transferència dels drets de propietat del codi transferit a NVIDIA (Contributor License Agreement).

El codi dels mòduls del nucli es divideix en dues parts: components generals no vinculats al sistema operatiu i una capa per a la interacció amb el nucli Linux. Per reduir el temps d'instal·lació, els components comuns encara es subministren als controladors propietaris de NVIDIA en forma d'un fitxer binari ja muntat, i la capa s'assembla a cada sistema, tenint en compte la versió actual del nucli i la configuració existent. S'ofereixen els mòduls del nucli següents: nvidia.ko, nvidia-drm.ko (gestor de representació directa), nvidia-modeset.ko i nvidia-uvm.ko (memòria de vídeo unificada).

El suport de GPU de la sèrie GeForce i de l'estació de treball s'enumeren com a qualitat alfa, però les GPU dedicades basades en les arquitectures NVIDIA Turing i NVIDIA Ampere que s'utilitzen a les arquitectures d'acceleració informàtica del centre de dades i computació paral·lela (CUDA) són totalment compatibles i provades completament i adequades per utilitzar-les en producció. projectes (el codi obert ja està preparat per substituir els controladors propietaris). Es preveu l'estabilització del suport de GeForce i GPU per a estacions de treball per a futures versions. En última instància, el nivell d'estabilitat de la base de codi obert es portarà al nivell dels controladors propietaris.

En la seva forma actual, la inclusió de mòduls publicats al nucli principal és impossible, ja que no compleixen els requisits d'estil de codificació del nucli i les convencions arquitectòniques, però NVIDIA té la intenció de treballar conjuntament amb Canonical, Red Hat i SUSE per resoldre aquest problema i estabilitzar les interfícies del programari del controlador. A més, el codi publicat es pot utilitzar per millorar el controlador Nouveau de codi obert inclòs al nucli, que utilitza el mateix firmware de GPU que el controlador propietari.

Font: opennet.ru

Afegeix comentari