NVK on uusi avoimen lähdekoodin Vulkan-ohjain NVIDIA-grafiikkalaitteistolle
Collabora on julkaissut NVK:n, uusi avoimen lähdekoodin ohjain Mesalle toteuttaa Vulkan-grafiikkasovellusliittymän NVIDIA-näytönohjainkorteille. Ohjain on kirjoitettu tyhjästä käyttämällä virallisia otsikkotiedostoja ja NVIDIA:n julkaisemia avoimia ydinmoduuleja.
Kun kehität uutta kuljettajaa, Joissain paikoissa käytetään Nouveau OpenGL -ajurin ydinkomponentteja, mutta NVIDIA-otsikkotiedostojen nimien ja Nouveaun käänteistekniikan nimien erojen vuoksi koodin uudelleenkäyttö on vaikeaa ja vaati suurimmaksi osaksi paljon uudelleen ajattelua ja käyttöönottoa tyhjästä.
Kehitys myös on käynnissä uuden Vulkan-ajurin luomiseksi viittaus Mesaan, jonka koodia voi lainata muita ohjaimia luotaessa.
NVIDIA-laitteiston tuki avoimen lähdekoodin ohjaimissa on aina ollut hieman puutteellista. Nouveau-ajureita on olemassa, mutta niistä puuttuu usein ominaisuuksia, niissä on virheitä tai ne eivät yksinkertaisesti ole yhteensopivia tiettyjen korttien kanssa. Tämä johtuu useiden tekijöiden yhdistelmästä. Toisin kuin Intel- ja AMD-ajurit, nouveau-ohjainpino on kehitetty ilman virallista dokumentaatiota tai NVIDIA:n apua. He tarjoavat täällä toisinaan pieniä rekvisiitta. Historiallisesti se on keskittynyt ensisijaisesti nouveaun sallimiseen tarpeeksi, jotta voit asentaa Linux-jakelun, käyttää verkkoselainta ja ladata sen omat ohjainpinot.
Tätä varten mainitaan, että NVK-kuljettajan työskentelyn aikana Vulkan-ajureiden kehittämisessä yritettiin ottaa huomioon kaikki saatavilla oleva kokemus, pitää koodikanta optimaalisessa kunnossa ja minimoi koodin siirto muista Vulkan-ajureista tekemällä mitä tulee tehdä laadukkaan ja optimaalisen työn kannalta.
NVK-ohjainta on kehitetty vasta muutaman kuukauden ajan sen toiminnallisuus on rajallinen. Ohjain läpäisee 98 % testeistä kun suoritetaan 10 % Vulkan CTS (Compatibility Test Suite) -testeistä.
Yleisesti ottaen kuljettajakoulutuksen arvioidaan olevan 20-25 % ANV- ja RADV-ohjainten toimivuudesta. Laitteistotuen osalta ohjain on tällä hetkellä rajoitettu kortteihin perustuu mikroarkkitehtuureihin Turing ja Ampère. Kepler-, Maxwell- ja Pascal-grafiikkasuorittimia tukevat korjaustiedostot ovat työn alla, mutta ne eivät ole vielä valmiita.
Todennäköisesti suurin teknisen kamppailun alue on ollut laitteiston oikea ajo ydintilasta. NVIDIA-laitteisto luottaa allekirjoitettuun laiteohjelmistoon kaikessa näytöstä työn suorittamiseen virranhallintaan. NVIDIA:n aiemmin toimittamat laiteohjelmistoblobit olivat poistettuja versioita, jotka ne loivat vain avoimen lähdekoodin ohjaimille.
Pitkällä aikavälillä NVIDIA-näytönohjainkorttien NVK-ohjaimen odotetaan saavuttavan saman laatu- ja toiminnallisuustason kuin RADV-ohjain AMD-korteille. Kun NVK-ohjain on valmis, sen kehityksen aikana luotuja jaettuja kirjastoja voidaan käyttää NVIDIA-näytönohjainkorttien Nouveau OpenGL -ohjaimen parantamiseen.
Sitä myös harkitaan mahdollisuus käytä Zink-projektia OpenGL-ohjaimen toteuttamiseen NVIDIA-näytönohjainkorteille, jotka toimivat Vulkan API -kutsujen kääntämisen kautta.
Pitkällä aikavälillä toivotaan, että NVK on NVIDIA-laitteistolle sama kuin RADV AMD-laitteistolle.
Lopuksi hankkeesta kiinnostuneille mainitaan se on kehittämässä joukkue, johon kuuluu Karol Herbst (Nouveau-kehittäjä Red Hatissa), David airlie (DRM-ylläpitäjä Red Hatissa) ja Jason Ekstrand (Mesan aktiivinen kehittäjä Collaborassa).
Mitä tulee ohjainkoodiin, sinun pitäisi tietää se Se on avoimen lähdekoodin MIT-lisenssillä. Ohjain tukee vain syyskuusta 2018 lähtien julkaistuihin Turing- ja Ampere-mikroarkkitehtuureihin perustuvia GPU:ita. Jos haluat tietää siitä lisää, voit katsoa lisätietoja Seuraavassa linkissä.
Ole ensimmäinen kommentti