nylig Nvidia afsløret gennem en annonce har truffet beslutningen om at frigive koden af alle kernemoduler, der leveres i din suite af videodrivere til Linux.
Den frigivne kode er udgivet under MIT- og GPLv2-licenserne. Muligheden for at oprette moduler er tilvejebragt for x86_64- og aarch64-arkitekturerne på systemer, der kører Linux-kerne 3.10 og nyere, selvom firmware- og brugerrumsbiblioteker såsom CUDA, OpenGL og Vulkan-stakke forbliver proprietære til Nvidia. .
Det forventes, at offentliggørelsen af koden føre til en markant stigning om anvendeligheden af Nvidia GPU'er på Linux-systemer, forbedre integrationen med styresystemet og forenkle driverlevering og fejlfindingsproblemer.
Udviklerne af Ubuntu og SUSE har allerede annonceret dannelsen af pakker baseret på åbne moduler.
At have åbne moduler vil også gøre det lettere at integrere Nvidia-drivere med systemer baseret på brugerdefinerede ikke-standard builds af Linux-kernen. For Nvidia vil open source forbedre kvaliteten og sikkerheden af Linux-drivere gennem øget samfundsinvolvering og muligheden for tredjepartsgennemgang og uafhængig revision.
Det bemærkes, at den præsenterede open source-base samtidig bruges i dannelsen af proprietære drivere, især bruges den i beta-grenen 515.43.04, der blev frigivet i dag.
I dette tilfælde det lukkede lager er hovedlageret, og den foreslåede åben kildekodebase vil blive opdateret for hver version af proprietære drivere i form af konvertering efter nogen behandling og rengøring. Individuel ændringshistorik er ikke angivet, kun den overordnede commit for hver driverversion (modulkode for driver 515.43.04 er i øjeblikket frigivet).
Imidlertid samfundsrepræsentanter har mulighed for at indsende ansøgninger pull-fanen for at fremme dine rettelser og modulkodeændringer, men disse ændringer vil ikke blive afspejlet som separate ændringer i det åbne depot, men først vil blive integreret i det lukkede hovedlager og først derefter overført med resten af ændringerne til at åbne. Deltagelse i udviklingen kræver underskrivelse af en aftale om overførsel af ejerskabsrettigheder til den overførte kode til NVIDIA (Contributor License Agreement).
Kernemodulkoden er opdelt i to dele: almindelige komponenter, der ikke er bundet til operativsystemet, og et lag til grænseflade med Linux-kernen. For at reducere installationstiden leveres almindelige komponenter stadig i proprietære NVIDIA-drivere som en forudsamlet binær fil, og laget samles på hvert system under hensyntagen til den aktuelle kerneversion og tilgængelige konfiguration. Følgende kernemoduler leveres: nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko og nvidia-uvm.ko (Unified Video Memory).
La understøttelse af GeForce-serien og workstation GPU'er betragtes som alfakvalitet, men dedikerede GPU'er baseret på NVIDIA Turing og NVIDIA Ampere-arkitekturen, der bruges i Data Center for Parallel Computing and Data Acceleration (CUDA), er fuldt understøttet, fuldt testet og egnet til brug i virksomhedsprojekter. produktion (open source er nu klar til at erstatte proprietære drivere).
stabilisering af GeForce- og GPU-understøttelse til arbejdsstationer det er planlagt til fremtidige versioner. I sidste ende vil stabilitetsniveauet for open source-basen blive bragt til tilstanden af proprietære drivere.
I sin nuværende form er det ikke muligt at inkludere publicerede moduler i hovedkernen, da de ikke opfylder kernens krav til kodningsstil og arkitekturkonventioner, men Nvidia har til hensigt at arbejde sammen med Canonical, Red Hat og SUSE at løse dette problem og stabilisere controller-programmeringsgrænseflader. Derudover kan den frigivne kode bruges til at forbedre open source Nouveau-kernedriveren, som bruger den samme GPU-firmware som den proprietære driver.
endelig hvis du er det interesseret i at vide mere om det, du kan tjekke detaljerne i følgende link.
Vær den første til at kommentere