Kusukela uNvidia ekhiphe amamojula ayo e-kernel I-GPU njengomthombo ovulekile, bekubonakala sengathi bobabili umshayeli wobunikazi be-Nvidia kanye nomshayeli womthombo ovulekile we-Nouveau bazoba nentuthuko enkulu ngeminikelo engenziwa umphakathi futhi nangesikhathi esithile. I-Nouveau ingase ifike kulo msebenzi.
Ngemva kwezinyanga ezimbalwa futhi Ukuthuthukiswa kwe-Nouveau kuzohamba kancane, i-Red Hat ithathe izinyathelo ngalolu daba futhi muva nje umemezele izindaba ukuthi usebenza kuphrojekthi ye-Nova, eyethula njengomshayeli omusha ovulekile we-NVIDIA GPUs othuthukiswa ku-Rust.
Lo mshayeli ihlanganisa ukuqaliswa kwe-GPU nokusebenza kokulawula ku-firmware, kusetshenziswa isilawuli esincane se-GSP esizimele. I-Nova yakhelwe njengemojula ye-Linux kernel futhi isebenzisa i-DRM (Direct Rendering Manager) uhlelo olungaphansi. Le phrojekthi ibhekwa njengokuqhubeka kokuthuthukiswa komshayeli we-Nouveau wama-GPU nge-firmware ye-GSP.
U-Danilo Krummrich (Isigqoko Esibomvu) uyachaza:
Nge-Nova sinethuba lokunciphisa kakhulu ubunzima uma kuqhathaniswa ne-Nouveau, ngenxa yezizathu ezimbili eziyinhloko. Okokuqala nje, i-Architecture ye-Nouveau yomlando, ikakhulukazi ezungeze i-nvif/nvkm, iyinkimbinkimbi futhi ayiguquki futhi idinga ukulungiswa okukhulu ukuze kuxazululwe izinkinga ezithile. Okulandelayo, sifuna futhi ukuthatha ithuba lokufaka isandla emizamweni kaRust ku-kernel futhi sizuze ekukhushulweni kokuphepha kwenkumbulo okunikezwa ulimi lohlelo lwe-Rust.
Ngaphezu kwalokho, kushiwo ukuthi ngokuthuthukiswa kweNova, I-Red Hat ihlose ukuthatha ithuba lokufaka isandla emizamweni kaRust ku-kernel, njengoba kushiwo ikhodi yomshayeli ibhalwe nge-Rust futhi isebenzisa izendlalelo ezimbalwa ukuthuthukisa izishayeli zevidiyo ngalolu limi. Isibonelo, umshayeli usebenzisa izifinyezo ezivela egatsheni le-Rust-Device ukuze akhe abashayeli, izingxenye ezisuka egatsheni le-Rust-Pci ukuze zisebenze nebhasi le-PCI, kanye nezibopho ze-DRM kanye nezinhlelo ezingaphansi ze-GEM ezivela egatsheni le-Rust-DRM.
Okunye okukhulunywe ngakho wukuthuthukiswa komshayeli we-drm-asahi Rust we-Apple M1 kanye ne-M2 chip GPUs. Ukusetshenziswa kwe-Rust kulindeleke ukuthi kwandise ukuvikeleka nokuthembeka komshayeli ngokunciphisa amathuba okuba namaphutha lapho usebenza ngenkumbulo futhi uvumele ukuhlanganiswa komsebenzi kumshayeli wevidiyo ngokuthuthukiswa kwezingxenye ezivamile ku-Rust.
Inhloso kusuka kuNova ekugcineni ube ngumshayeli womthombo ovulekile we-NVIDIA Linux, okuhloswe ngayo ama-Turing GPUs namamodeli amasha (ikakhulukazi ochungechungeni lwe-RTX 2000) asekela i-GSP. Lesi silawuli esisha siyathuthukiswa ku-Rust ukuze kuzuzwe ukukhanya okukhulu nokuvumelana nezimo, okwethulwa njengenketho ethembisayo.
Enye ye- izizathu ukudala isilawuli esisha ukwenza lula inqubo uma iqhathaniswa ne-Nouveau, sibonga ukusetshenziswa kwezishayeli esezilungele ukusetshenziswa ezinikezwe i-firmware ye-GSP. Lokhu kugwema inkimbinkimbi engadingekile kukhodi yomshayeli ye-Nouveau, edinga ukusekela ama-NVIDIA GPU amadala futhi yethule izinkinga ezifana nokuphahlazeka kwekhodi ye-VMM/MMU. Ngokuthuthukisa i-Nova kusukela ekuqaleni nokugxila kuphela kuma-GPU asekelwe ku-GSP, kwethenjwa ukugwema lezi zinkinga kanye nezinkinga.
Ngakolunye uhlangothi, i-Red Hat iphinde isho amanye amaphuzu okudingeka ibhekane nawo, ithi ngokukhethwa kwe-Rust, inkinga yokuqala yokuxazulula ukungabi khona kwe-C ebophezelayo yengqalasizinda ye-kernel yokuphela-to-ekupheleni:
"isb. ukukhishwa kwedivayisi/umshayeli... sidinga umsebenzisi wezifinyezo ezikhuphuka nomfula, kodwa futhi sidinga izifinyezo ukuze sidale umshayeli - sifuna ukuthuthukisa i-Nova enhla nomfula futhi siqale nge-stub esisebenzisa kuphela izifinyezo ezimbalwa Ukugqwala. okuyisisekelo.
ekugcineni uma ukhona unentshisekelo yokwazi okwengeziwe ngayo, ungabheka imininingwane Kulesi sixhumanisi esilandelayo, kanye nokubonisana nentuthuko futhi uthintane nekhodi yomthombo walokhu endaweni yakho yokugcina.