Ang NVK, usa ka bukas nga drayber alang sa mga graphics card sa NVIDIA, nagsuporta sa Vulkan 1.0

Ang Khronos consortium, nga nagpalambo sa mga sukdanan sa graphic, nakaila sa hingpit nga pagkaangay sa bukas nga NVK driver alang sa NVIDIA video card nga adunay Vulkan 1.0 nga detalye. Ang drayber malampuson nga nakapasar sa tanan nga mga pagsulay gikan sa CTS (Kronos Conformance Test Suite) ug gilakip sa lista sa mga sertipikadong drayber. Nakumpleto na ang sertipikasyon para sa NVIDIA GPUs base sa Turing microarchitecture (TITAN RTX, GeForce RTX 2060/2070/2080, GeForce GTX 1660, Quadro RTX 3000-8000, Quadro T1000/T2000). Ang pagsulay gihimo sa usa ka palibot nga adunay Linux kernel 6.5, X.Org X Server 1.20.14, XWayland 22.1.9 ug GNOME Shell 44.4. Ang pag-angkon sa sertipiko nagtugot kanimo sa opisyal nga pagpahayag sa pagkaangay sa mga sumbanan sa graphic ug paggamit sa mga kaubang Khronos nga marka sa pamatigayon.

Ang drayber sa NVK gitukod gikan sa wala sa usa ka team lakip si Karol Herbst (Nouveau developer sa Red Hat), David Airlie (DRM maintainer sa Red Hat), ug Jason Ekstrand (aktibong Mesa developer sa Collabora). Sa paghimo sa drayber, gigamit sa mga developer ang opisyal nga mga file sa header ug bukas nga mga module sa kernel nga gipatik sa NVIDIA. Ang NVK code migamit sa pipila ka mga batakang sangkap sa Nouveau OpenGL driver sa pipila ka mga dapit, apan tungod sa mga kalainan sa mga ngalan sa NVIDIA header files ug ang reverse-engineered nga mga ngalan sa Nouveau, ang direktang paghulam sa code lisud ug sa kadaghanang bahin. daghang mga butang ang kinahanglan nga hunahunaon pag-usab ug ipatuman gikan sa wala.

Ang pag-uswag gihimo uban ang usa ka mata sa paghimo sa usa ka bag-ong reperensiya nga drayber sa Vulkan para sa Mesa, ang code nga mahimong hinulaman sa paghimo sa ubang mga drayber. Aron mahimo kini, kung nagtrabaho sa drayber sa NVK, gisulayan nila nga tagdon ang tanan nga naa na nga kasinatian sa pagpauswag sa mga drayber sa Vulkan, pagpadayon sa base sa code sa kamalaumon nga porma ug pagpakunhod sa pagbalhin sa code gikan sa ubang mga drayber sa Vulkan, pagbuhat kung unsa kini kinahanglan alang sa. labing maayo ug taas nga kalidad nga trabaho, ug dili binuta nga pagkopya kung giunsa gihimo sa ubang mga drayber. Ang drayber nalakip na sa Mesa, ug ang gikinahanglan nga mga kausaban sa Nouveau DRM driver API gilakip sa Linux 6.6 kernel.

Lakip sa mga pagbag-o sa pahibalo, si Mesa usab nakamatikod sa pagsagop sa usa ka bag-ong backend compiler alang sa NVK, nga gisulat sa Rust nga pinulongan ug pagsulbad sa mga problema sa daan nga compiler nga nakabalda sa pagpasa sa mga teksto sa Kronos, ingon man usab sa pagwagtang sa pipila ka sukaranan nga mga limitasyon sa arkitektura nga dili matul-id nga walay kompleto nga rework sa daan nga compiler. Lakip sa mga plano alang sa umaabot, ang pagdugang sa suporta sa GPU base sa Maxwell microarchitecture ug ang pagpatuman sa hingpit nga suporta alang sa Vulkan 1.3 API gihisgutan sa bag-ong backend.

Source: opennet.ru

Idugang sa usa ka comment