Konsorciumi Khronos, i angazhuar në zhvillimin e standardeve grafike, ka njohur përputhshmërinë të plotë të drivers të hapur NVK me specifikimin Vulkan 1.4 në sistemet me GPU NVIDIA bazuar në mikroarkitekturën Maxwell (GTX 700/800/900), Pascal (GTX 1000) dhe Volta (TITAN V). Driveri ka përfunduar me sukses të gjitha testet e setit CTS (Khronos Conformance Test Suite) dhe është përfshirë në listën e drivers të certifikuar. Marrja e certifikatës ofron mundësinë për të deklaruar zyrtarisht përputhshmërinë me standardet grafike dhe për të përdorur markat e lidhura me to të Khronos.
Duke filluar nga Mesa 25.1, Vulkan-driveri NVK do të aktivizohet si parazgjedhje për GPU-të NVIDIA Maxwell, Pascal dhe Volta. Në Mesa 25.2, mbështetje për OpenGL për GPU-të e përmendura do të kalojë nga driveri Nouveau në Zink përmes Vulkan-driverit NVK. Zink ofron një implementim të OpenGL 4.6 mbi Vulkan, duke mundësuar OpenGL të përshpejtuar nga hardueri në pajisjet që mbështesin API Vulkan. Performanca e Zink është afërsisht e ngjashme me performancën e implementimeve native të OpenGL.
Më parë, përputhshmëria me Vulkan 1.4 në NVK ishte e siguruar vetëm për GPU-të e reja NVIDIA të bazuara në mikroarkitekturën Turing (seria GeForce GTX 16xx, RTX 20xx dhe Quadro RTX), Ampere (seria GeForce RTX 30xx dhe RTX A2000/4000/5000/6000) dhe Ada (seria GeForce RTX 4xxx, RTX 4000 SFF, RTX 4xxx/5000/6000 Ada). Po punohet për të shtuar mbështetje për GPU-të e bazuara në mikroarkitekturën Kepler dhe Fermi në NVK, por mbështetja e tyre do të jetë e kufizuar maksimumi deri në Vulkan 1.2 për shkak të kufizimeve harduerike.
Driveri NVK është krijuar nga zero nga një ekip që përfshin Karol Herbst (Karol Herbst, zhvillues i Nouveau nga Red Hat), David Airlie (David Airlie, mirëmbajtës i nën-sistemit DRM nga Red Hat) dhe Jason/Faith Ekstrand (Jason/Faith Ekstrand, zhvillues aktiv i Mesa nga Collabora). Kur u krijua driveri, zhvilluesit përdorën skedarë zyrtarë titulli dhe module të hapura të kernelit të publikuara nga NVIDIA. Në kodin NVK, ndonjëherë u përdorën komponentë themelorë të driverit OpenGL Nouveau, por për shkak të dallimeve në emërtime në skedarët e titullit të NVIDIA dhe emërtimeve në Nouveau, të marra përmes inxhinierisë inversë, huazimi i drejtpërdrejtë i kodit ishte i vështirë dhe në shumicën e rasteve duhej të rishikohet shumë dhe të krijohej nga e para.
Zhvillimi është bërë me synimin për të krijuar një driver të ri referencë Vulkan për Mesa, kodi i të cilit mund të përdoret në krijimin e drivers të tjerë. Për këtë, gjatë punës mbi driverin NVK, u përpoqën të merrnin parasysh të gjitha përvojat e ekzistuese në zhvillimin e Vulkan-drivers, të mbajnë bazën e kodit në formë optimale dhe të minimizojnë transferimin e kodit nga drivers të tjerë Vulkan, duke bërë siç duhet për një funksionim optimal dhe cilësor, e jo duke kopjuar verbërisht atë që është bërë në drivers të tjerë.
Burimi: opennet.ru
