Ներկայացրեց NVK-ը՝ բաց Vulkan դրայվեր NVIDIA վիդեո քարտերի համար

Collabora-ն ներկայացրել է NVK-ը՝ Mesa-ի նոր բաց կոդով դրայվեր, որն իրականացնում է Vulkan գրաֆիկական API NVIDIA վիդեո քարտերի համար: Վարորդը գրված է զրոյից՝ օգտագործելով պաշտոնական վերնագրի ֆայլերը և NVIDIA-ի կողմից հրապարակված բաց կոդով միջուկի մոդուլները: Վարորդի կոդը բաց կոդով է MIT լիցենզիայի ներքո: Վարորդը ներկայումս աջակցում է միայն 2018 թվականի սեպտեմբերից թողարկված Turing և Ampere միկրոճարտարապետությունների վրա հիմնված GPU:

Նախագիծը մշակվում է մի թիմի կողմից, որը ներառում է Կարոլ Հերբստը՝ Red Hat-ի Nouveau-ի ծրագրավորող, Դեյվիդ Էյրլին՝ Red Hat-ի DRM-ի սպասարկող և Ջեյսոն Էքստրանդը՝ Mesa-ի ակտիվ ծրագրավորող Collabora-ում: Նոր դրայվեր մշակելիս, որոշ տեղերում օգտագործվում են Nouveau OpenGL դրայվերի հիմնական բաղադրիչները, սակայն NVIDIA վերնագրի ֆայլերի անունների և հակադարձ ճարտարագիտության հիման վրա ստացված անունների տարբերությունների պատճառով՝ ուղղակի փոխառություն: կոդը դժվար է, և մեծ մասամբ անհրաժեշտ էր շատ բաներ վերանայել և դրանք իրականացնել զրոյով։

Մշակումն իրականացվում է նաև Mesa-ի համար Vulkan նոր տեղեկատու դրայվեր ստեղծելու նպատակով, որի կոդը կարելի է վերցնել այլ դրայվերներ ստեղծելիս: Դա անելու համար, վարորդի վրա աշխատելիս, NVK-ն փորձեց հաշվի առնել Vulkan դրայվերների մշակման ողջ առկա փորձը, պահպանել կոդի բազան օպտիմալ ձևով և նվազագույնի հասցնել կոդերի փոխանցումը այլ Vulkan վարորդներից՝ անելով այնպես, ինչպես պետք է լինի օպտիմալի համար: և որակյալ աշխատանք, և ոչ թե կուրորեն պատճենելով, թե ինչպես է դա արվել այլ վարորդների մեջ:

NVK դրայվերը մշակվում է ընդամենը մի քանի ամիս, ուստի դրա ֆունկցիոնալությունը սահմանափակ է: Վարորդը հաջողությամբ անցնում է թեստերի 98%-ը, երբ կատարում է Vulkan CTS-ի (Համատեղելիության թեստային փաթեթ) թեստերի 10%-ը: Ընդհանուր առմամբ, վարորդի պատրաստվածությունը գնահատվում է ANV և RADV վարորդների ֆունկցիոնալության 20-25% -ը: Սարքավորումների աջակցության առումով վարորդը ներկայումս սահմանափակված է Թյուրինգի և Ամպերի միկրոճարտարապետությունների վրա հիմնված քարտերով: Patch-ների վրա աշխատում են Kepler, Maxwell և Pascal GPU-ները, սակայն դրանք դեռ պատրաստ չեն։

Ակնկալվում է, որ երկարաժամկետ հեռանկարում NVIDIA գրաֆիկական քարտերի NVK դրայվերը կհասնի որակի և ֆունկցիոնալության մակարդակի, որը նման է AMD քարտերի RADV դրայվերին: Երբ NVK դրայվերը պատրաստ է, դրա մշակման ընթացքում ստեղծված ընդհանուր գրադարանները կարող են օգտագործվել NVIDIA վիդեո քարտերի Nouveau OpenGL դրայվերը բարելավելու համար: Դիտարկվում է նաև Zink նախագծի օգտագործման հնարավորությունը NVIDIA վիդեո քարտերի լիարժեք OpenGL դրայվեր իրականացնելու համար, որն աշխատում է Vulkan API-ի հեռարձակման զանգերի միջոցով:

Source: opennet.ru

Добавить комментарий