Prezantoi NVK, një drejtues Vulkan i hapur për kartat video NVIDIA

Collabora ka prezantuar NVK, një drejtues i ri me burim të hapur për Mesa që implementon API grafike Vulkan për kartat video NVIDIA. Drejtuesi është shkruar nga e para duke përdorur skedarë zyrtarë të kokës dhe module të kernelit me burim të hapur të publikuar nga NVIDIA. Kodi i shoferit është me burim të hapur sipas licencës MIT. Drejtuesi aktualisht mbështet vetëm GPU të bazuara në mikroarkitekturat Turing dhe Ampere, të lëshuara që nga shtatori 2018.

Projekti është duke u zhvilluar nga një ekip që përfshin Karol Herbst, një zhvillues Nouveau në Red Hat, David Airlie, një mirëmbajtës DRM në Red Hat dhe Jason Ekstrand, një zhvillues aktiv Mesa në Collabora. Kur zhvilloni një drejtues të ri, përbërësit bazë të drejtuesit Nouveau OpenGL përdoren në disa vende, por për shkak të dallimeve në emrat në skedarët e kokës NVIDIA dhe emrat në Nouveau, të marra në bazë të inxhinierisë së kundërt, huazimi i drejtpërdrejtë i kodi është i vështirë dhe në pjesën më të madhe ishte e nevojshme të rimendoheshin shumë gjëra dhe të zbatoheshin me zero.

Zhvillimi po kryhet gjithashtu me synimin për krijimin e një drejtuesi të ri referencë Vulkan për Mesa, kodi i të cilit mund të huazohet kur krijohen drejtues të tjerë. Për ta bërë këtë, kur punonte në drejtuesin, NVK u përpoq të merrte parasysh të gjithë përvojën ekzistuese në zhvillimin e drejtuesve Vulkan, të mbajë bazën e kodit në formë optimale dhe të minimizojë transferimin e kodit nga drejtuesit e tjerë Vulkan, duke bërë siç duhet për optimale. dhe punë me cilësi të lartë, dhe jo duke kopjuar verbërisht se si është bërë në drejtuesit e tjerë.

Drejtuesi NVK ka qenë në zhvillim vetëm për disa muaj, kështu që funksionaliteti i tij është i kufizuar. Shoferi kalon me sukses 98% të testeve kur kryen 10% të testeve nga Vulkan CTS (Suite Testimi i Përputhshmërisë). Në përgjithësi, gatishmëria e shoferit vlerësohet në 20-25% të funksionalitetit të drejtuesve ANV dhe RADV. Për sa i përket mbështetjes harduerike, drejtuesi aktualisht është i kufizuar në kartat e bazuara në mikroarkitekturat Turing dhe Ampere. Arnimet janë duke u punuar për të mbështetur GPU-të Kepler, Maxwell dhe Pascal, por ato nuk janë ende gati.

Në afat të gjatë, drejtuesi NVK për kartat grafike NVIDIA pritet të arrijë një nivel cilësie dhe funksionaliteti të ngjashëm me drejtuesin RADV për kartat AMD. Pasi drejtuesi NVK të jetë gati, bibliotekat e zakonshme të krijuara gjatë zhvillimit të tij mund të përdoren për të përmirësuar drejtuesin Nouveau OpenGL për kartat video NVIDIA. Gjithashtu po shqyrtohet mundësia e përdorimit të projektit Zink për të zbatuar një drejtues të plotë OpenGL për kartat video NVIDIA, duke punuar përmes thirrjeve të transmetimit në Vulkan API.

Burimi: opennet.ru

Shto një koment