NVIDIA video upravljački programi otvorenog koda za Linux kernel

NVIDIA je objavila da su svi moduli jezgre uključeni u njen skup vlasničkih upravljačkih programa otvorenog koda. Kod je otvoren pod licencama MIT i GPLv2. Mogućnost izrade modula dostupna je za x86_64 i aarch64 arhitekture na sustavima s Linux kernelom 3.10 i novijim izdanjima. Firmware i biblioteke koje se koriste u korisničkom prostoru, kao što su CUDA, OpenGL i Vulkan stacks, ostaju u vlasništvu.

Očekuje se da će objava koda dovesti do značajnog poboljšanja upotrebljivosti rada s NVIDIA GPU-ima na Linux sustavima, ojačati integraciju s operativnim sustavom te pojednostaviti isporuku upravljačkih programa i otklanjanje grešaka u problemima. Programeri Ubuntua i SUSE već su najavili formiranje paketa temeljenih na otvorenim modulima. Prisutnost otvorenih modula također će pojednostaviti integraciju NVIDIA drajvera sa sustavima koji se temelje na nestandardnim prilagođenim verzijama Linux kernela. Za tvrtku NVIDIA, otvoreni kod će pomoći u poboljšanju kvalitete i sigurnosti Linux upravljačkih programa kroz bližu interakciju sa zajednicom i mogućnost pregleda promjena od strane treće strane i neovisne revizije.

Napominje se da se predstavljena baza otvorenog koda istovremeno koristi u formiranju vlasničkih upravljačkih programa, posebno se koristi u danas objavljenoj beta grani 515.43.04. U ovom slučaju, primarni je zatvoreni repozitorij, a predložena baza otvorenog koda ažurirat će se za svako izdanje vlasničkih upravljačkih programa u obliku cast-a nakon određene obrade i čišćenja. Povijest pojedinačnih promjena nije osigurana, samo opći commit za svaku verziju upravljačkog programa (trenutno je objavljen kod modula za upravljački program 515.43.04).

Međutim, članovi zajednice imaju priliku podnijeti zahtjeve za povlačenjem kako bi gurnuli svoje popravke i izmjene koda modula, ali te promjene neće biti prikazane kao zasebne promjene u javnom repozitoriju, već će prvo biti integrirane u glavni privatni repozitorij pa tek onda prenijeti s ostalim promjenama na otvaranje. Za sudjelovanje u razvoju morate potpisati ugovor o prijenosu prava vlasništva nad prenesenim kodom na NVIDIA (Contributor License Agreement).

Kod modula kernela podijeljen je u dva dijela: opće komponente koje nisu vezane uz operativni sustav i sloj za interakciju s Linux kernelom. Kako bi se smanjilo vrijeme instalacije, uobičajene komponente i dalje se isporučuju u vlasničkim NVIDIA upravljačkim programima u obliku već sastavljene binarne datoteke, a sloj se sastavlja na svakom sustavu, uzimajući u obzir trenutnu verziju kernela i postojeće postavke. U ponudi su sljedeći kernel moduli: nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko i nvidia-uvm.ko (Unified Video Memory).

GeForce serija i GPU podrška za radnu stanicu navedena je kao alfa kvaliteta, ali namjenski GPU-ovi temeljeni na arhitekturama NVIDIA Turing i NVIDIA Ampere koji se koriste u arhitekturama računalnog ubrzanja podatkovnog centra i paralelnog računalstva (CUDA) u potpunosti su podržani i potpuno testirani. i prikladni za upotrebu u proizvodnji projekti (otvoreni kod je već spreman zamijeniti vlasničke upravljačke programe). Stabilizacija GeForce i GPU podrške za radne stanice planirana je za buduća izdanja. U konačnici, razina stabilnosti baze otvorenog koda bit će dovedena na razinu vlasničkih upravljačkih programa.

U svom trenutnom obliku, uključivanje objavljenih modula u glavnu jezgru je nemoguće, budući da nisu u skladu sa zahtjevima stila kodiranja jezgre i arhitektonskim konvencijama, ali NVIDIA namjerava raditi zajedno s Canonical, Red Hat i SUSE na rješavanju ovog problema i stabilizirati sučelja upravljačkog programa. Osim toga, objavljeni kod može se koristiti za poboljšanje Nouveau upravljačkog programa otvorenog koda uključenog u kernel, koji koristi isti GPU firmware kao i vlasnički upravljački program.

Izvor: opennet.ru

Dodajte komentar