NVIDIA vydáva ovládače s príchuťou otvorenosti

Tento rok sme už videli veľké množstvo úniky zdrojového kódu NVIDIA, a vydanie ovládačov s otvoreným zdrojovým kódom pre NVIDIA Tegra. Zdá sa, že NVIDIA sa rozhodla to zosilniť a práve vydala open-source moduly jadra GPU pre Linux. The Odkaz na GitHub pomenovaný open-gpu-kernel-modules ľudia sa tešia a už testujeme kód, vyrábame mémy a špekulujeme o budúcnosti. O tomto ovládači sa v súčasnosti tvrdí, že je experimentálny, iba „pripravený na výrobu“ pre karty dátových centier – ale už si ho môžete vyskúšať!

Samozrejme, je tu nuansa. Toto je nový kód a nesúvisí so známym proprietárnym ovládačom. Bude fungovať iba na kartách počínajúc od série RTX 2000 a Quadro RTX (aka Turing a ďalej). Dobrou správou je, že výkon je porovnateľné s ovládačom uzavretého zdroja, aj v tomto bode! Funkciou tohto projektu – veľká časť funkcií, ktoré ovládače AMD a Intel implementujú v jadre Linuxu, sú namiesto toho, poskytuje binárny blob z vnútra GPU. Tento blob beží na GSP, čo je jadro RISC-V, ktoré je k dispozícii iba na GPU Turing a mladších – preto je obmedzenie série. Teraz každý GPU načíta kus firmvéru, ale tento je poriadny!

Okrem toho tento ovládač už poskytuje koherentnejšiu integráciu do linuxového jadra s obrovskými výhodami, ktoré sa budú v budúcnosti len zvyšovať. Ešte nie je všetko otvorené – knižnice používateľského priestoru NVIDIA a ovládače OpenGL, Vulkan, OpenCL a CUDA zostávajú zatiaľ zatvorené. To isté platí pre starý proprietárny ovládač NVIDIA, ktorý by, hádam, bol ponechaný hniť – pasuje, keďže „nechanie hniť“ je to, čo tento ovládač predtým urobil generáciám starých, ale dokonale použiteľných kariet.

Upstreaming tohto ovládača bude určite obrovským úsilím, ale to je určite cieľom a výhody budú tiež značné. Aj keď je, tento ovládač má oveľa väčší potenciál. Na rozdiel od britského policajta linuxové jadro kontroluje licenciu každého modulu jadra, ktoré načíta, a obmedzuje API, ktoré môže použiť, ak nemá licenciu GPL – čo predchádzajúci ovládač NVIDIA nebol, pretože jeho otvorené časti boli v podstate tenká vrstva medzi jadrom a binárnymi ovládačmi, a preto nie je možné licencovať GPL. Pretože tento vodič má licenciu MIT / GPL, teraz majú k dispozícii väčšiu sadu rozhraní a mohli by ho lepšie integrovať do linuxového ekosystému namiesto sady proprietárnych nástrojov.

Teraz o 65 % viac vodičov na vodiča!

Mali by sa zlepšiť možnosti ladenia, bezpečnosť a celkový integračný potenciál. Okrem toho sa otvára množstvo nových možností. Na začiatok to určite otvára dvere pre portovanie ovládača na iné operačné systémy ako FreeBSD a OpenBSD a môže dokonca pomôcť bezplatnej výpočtovej technike. Podpora NVIDIA GPU na ARM bude v budúcnosti jednoduchšia a mohli by sme vidieť viac cool úsilie využiť výhody toho, s čím nám GPU pomáhajú pri spárovaní s ARM SBC, od vzrušujúcich videohier až po výkonné strojové učenie. Vydanie Red Hat hovorí, že z hľadiska správnej integrácie produktov NVIDIA do linuxového ekosystému nás čaká ešte viac, bez kameňov na kameni.

Vo všeobecnosti uvidíte, že to všetci oslavujú, a to z dobrých dôvodov. Tradíciou je, že oslavujeme takéto radikálne kroky, aj keď nedokonalé, od veľkých spoločností – a oprávnene, vzhľadom na výhody, ktoré som práve vymenoval, a budúci potenciál. Keďže vidíme viac takýchto krokov od veľkých hráčov, budeme sa mať z čoho radovať a nespočetné množstvo problémov zostane v minulosti. Avšak, pokiaľ ide o otvorenosť pre to, čo si ceníme, situácia sa stáva trochu divnou a ťažko sa s ňou vyrovnať.

Otvorenosť nám pomáha pridávať funkcie, ktoré potrebujeme, opravovať problémy, s ktorými sa stretávame, učiť sa nové veci z práce iných a objavovať limity, keď interagujeme s technológiou, ktorá definuje čoraz viac našich životov. Ak sa má veriť všetkému vzrušujúcemu sci-fi, ktoré čítame ako deti, skutočne máme pracovať v tandeme s technológiou. Tento ovládač v mnohých ohľadoch nie je typom otvorenosti, ktorý nám pomáha nášmu hardvéru, ale určite kontroluje veľa políčok pre to, čo vnímame ako „otvorený“. Ako sme sa sem dostali?

Je dobre známe, že otváranie každej jednej časti kódu nie je to, čo robia veľké spoločnosti – musíte niekde skryť bity DRM a porušenia patentov. Veľa kódu, ktorý sa predtým nachádzal v proprietárnom ovládači, teraz beží na inom CPU a je rovnako netransparentný ako predtým. Žiadny ovládač sa nespolieha tak na binárny kód blob ako tento, a predsa len poloironicky, nie je tak ďaleko od toho, kde je mohli technicky získať RYF-certifikáciu. Ide len o to, že nežiaduce binárne bloby sú teraz „firmvér“ namiesto „softvér“.

Fotografia Thinkpad X200 na stole, displej zobrazujúci ponuku GRUB s roztomilým obrázkom maskota GNU v pozadí
Niečo nie je v poriadku, ak sa to považuje za otvorenejšie ako novéna

RYF (Rešpektuje vašu slobodu) certifikácia od Free Software Foundation, aj keď bola v poslednom čase dobre mienená čerpané teplo za to, že je kontraproduktívny voči svojim cieľom a vyrába hardvér zložitejšie bez potreby, a dokonca aj vedúci projektu Libreboot hovorí, že jeho princípy nechať na želanie. Implicitne berieme certifikáciu RYF ako smernicu otvorenosti, o ktorú sa usilujeme Notebook Novena sa rozhodol nepriľnúť k tomu a určite je lepšie. Od RYF sa máme čo učiť a je to celkom jasné potrebujeme ďalšiu pomoc.

Odtiaľ – čo berieme ako „otvorené“? A kto nám môže pomôcť sledovať, čo je „otvorenosť“ – konkrétne druh otvorenosti, ktorý nás posúva smerom k utopickejšiemu, no zároveň realistickejšiemu svetu, kde je náš vzťah k technológii zdravý a láskyplný? Niektoré usmernenia a zásady nám pomáhajú overiť si, či sa držíme správnej cesty – a svet sa zmenil natoľko, že staré myšlienky nie vždy platia, rovnako ako napr. softvérová medzera v cloude to dokazuje zložité vyriešiť.

Napriek tomu sa práve otvorilo oveľa viac kódu a toto je na niektorých frontoch výhra. Zároveň sa nedostaneme tam, kde by sme chceli byť, ak sa ostatné spoločnosti rozhodnú držať sa tohto príkladu, a ako hackeri nedosiahneme mnohé z prelomových vecí, ktoré nás uvidíte dosiahnuť pomocou nástrojov s otvoreným zdrojovým kódom. v našich rukách. A ak nebudeme opatrní, môžeme si to pomýliť s otvorenosťou, z ktorej sa sem všetci chodíme učiť. Ide teda o zmiešanú tašku.

Ako už bolo spomenuté, tento ovládač je určený pre sériu 2000 RTX a vyššie. Staré karty sú stále obmedzené buď na proprietárny ovládač alebo Nouveau – čo má za sebou históriu obmedzovania spoločnosťou NVIDIA. Príklad: v posledných rokoch má NVIDIA reimplementované dôležité funkcie, ako je ovládanie hodín spôsobom prístupným len cez a podpísaný firmware shim s uzavretým API, ktorý je zložitý na spätné inžinierstvo, a odvtedy nespolupracuje – čo sa stalo poškodiť projekt Nouveau bez nápravy v nedohľadne. Na rozdiel od toho, že AMD pomáhalo pri prepracovaní kódu pre karty vydané skôr, ako vypadol ich otvorený ovládač, tento problém zostáva.

Odtiaľto však bude Nouveau žiť ďalej. Čiastočne bude stále použiteľný pre staršie karty, ktoré nikam neodchádzajú, a čiastočne sa zdá, že by mohol pomôcť nahradiť spomínané knižnice používateľského priestoru, ktoré ostávajú uzavreté. The oficiálna stránka vydania NVIDIA hovorí, že nie je nemožné, že úsilie Nouveau a snahy o otvorený ovládač NVIDIA by mohli byť zlúčené do jedného, ​​víťazstvo pre všetkých, aj keď trochu horkosladké.

Kvôli nedostatku možno aj tak nezískate GPU na spustenie tohto ovládača. To znamená, že sa zotavíme z nedostatku a šialenstva spôsobeného ťažbou a ceny klesnú do bodu, keď naše systémy budú fungovať lepšie – možno nie váš laptop vybavený MX150, ale určite veľa výkonných systémov, ktoré ešte len plánujeme. stavať. NVIDIA ešte nie je tam, kde stoja AMD a Intel, ale už sa tam dostávajú.

[Tux penguin image © Larry Ewing, coincidentally remixed using GIMP.]

Leave a Comment