Hlavní navigace

Nvidia otevřela zdrojové kódy svého ovladače pro linuxové jádro

12. 5. 2022
Doba čtení: 3 minuty

Sdílet

 Autor: Depositphotos
Stalo se to, o co prosili uživatelé mnoho let. Společnost Nvidia otevřela zdrojové kódy ovladače svých grafických karet. Přinášíme odpovědi na nejčastější otázky: Co bylo otevřeno? Co to znamená pro uživatele?

Po dvou dekádách problémů, proseb i ironických vyjádření se to nakonec stalo: Nvidia uvolnila zdrojové kódy svého jaderného ovladače a vystavila je na GitHub. Společnost nabízí ovladače pro grafické karty už dvě dekády také linuxovým uživatelům, ale zatím šlo vždy jen o uzavřené binárny bloby.

Uživatelé inspirováni úspěchem konkurenční společnosti AMD žádali společnost Nvidia, aby také ovladače otevřela. Počínaje verzí R515 je nyní konečně ovladač k dispozici včetně zdrojových kódů, konkrétně pod duální licencí GNU GPL a MIT. Pojďme společně odpovědět na otázky, které se okolo otevření ovladače točí.

Pro koho je určen?

Nvidia říká, že ovladač je zatím určen především pro datacentrové grafické procesory Turing a Ampere – pro ně je dostupný v „produkční kvalitě“. Ovladač míří k použití s CUDA a přestože obsahuje kód pro podporu displeje, ten není dostatečně otestován a nemusí být kompletní.

Stav podpory GeForce a desktopových grafik je tedy zatím označen jako „alfa“. Uživatelé, kteří chtějí přesto nový ovladač vyzkoušet, mohou použít jaderný parametr  NVreg_EnableUnsupportedGpus, který je zmíněn v dokumentaciSoučástí kódu je podpora vlastností jako G-SYNC, NVIDIA RTX ray tracing ve Vulkanu a NVIDIA OptiX.

Instalační balíček dodávaný společností Nvidia bude obsahovat obě varianty: binární i otevřenou. Uživatel si bude moci vybrat, kterou chce do systému nainstalovat.

Výběr ovladače při instalaci balíčku od Nvidie

Autor: Nvidia

Nový otevřený ovladač ale bude podporovat jen čipy Turing a novější, tedy grafické karty vydané v roce 2018 a později. Uživatelé starších karet budou nadále používat původní binární ovladače.

Co je přesně otevřeno?

Otevřeny byly zdrojové kódy modulu určeného pro linuxové jádro. Velká část funkcionality je ale součástí firmware a také komponent určených pro uživatelský prostor. Tyto části jsou netknuté a zůstanou i nadále uzavřené. Jde především o knihovny a ovladače pro OpenGL, Vulkan, OpenCL a CUDA.

Christian Schaller, šéf desktopového týmu ze společnosti Red Hat, ale v blogovém zápisku říká, že jde přesto o velmi dobrou zprávu. Nyní máme ovladač jádra Nvidia, který bude schopen využívat pouze GPL API v jádře Linuxu, ačkoli toto počáteční vydání nevyužívá žádná API, která starý ovladač již nepoužíval. Původní ovladač nemohl používat GPL only API kvůli licenci. Nyní toto omezení mizí, ale první vydaná verze na tom ještě nic nemění.

Součástí modulu do jádra je samotný ovladač, integrace NVIDIA-DRM, ovladač NVIDIA-Modeset a NVIDIA-UVM pro správu Unified Video Memory.

Co to znamená pro uživatele?

Schaller také vysvětluje, že tu s námi ještě ovladače Nvidia a Nouveau budou dlouho společně. Z dlouhodobého hlediska je ale otevření ovladače velmi dobrý krokV nejbližší době to nebude mít zásadní dopad. Postupem času však poskytne cestu k radikálnímu zjednodušení podpory hardwaru Nvidia.

Nakonec by tak především uživatelům mělo ubýt problémů a používání grafických karet Nvidia by mělo být ještě jednodušší. Z dlouhodobého hlediska doufáme, že budeme moci získat podobnou zkušenost s hardwarem Nvidia, kterou dnes můžeme nabídnout pro hardware Intel a AMD, pokud jde o funkčnost ihned po vybalení.

Konkrétně to znamená okamžitou funkčnost nových generací čipů, vysoký výkon ovladačů Mesa a možnost podepsat ovladač v jádře pro bezproblémové použití secure bootu. 

Dostane se do jádra?

Firma zatím tvrdí, že kód ovladače není připraven na přijetí do hlavního stromu linuxového jádra. Zároveň ale slibuje, že na tom bude pracovat se společnostmi Canonical, Red Hat a Suse. Pro běžného uživatele linuxového desktopu tedy nejde zatím o nic převratného, co by mohl začít teď hned používat. Ale je to příslib do budoucna.

CS24 tip temata

Mezi tím ovšem mohou zveřejněné zdrojové kódy posloužit vývojářům ovladače Nouveau, kteří díky nim mohou svůj kód významně vylepšit. Nouveau umožňuje využívat stejného firmware pro karty, jako používají originální ovladače. Bude to opět nějakou dobu trvat, ale Nouveau by mohl vyřešit svá omezení s taktováním GPU a mohl by se tak dobrat stejného výkonu jako originální ovladače.

Zmíněné partnerské společnosti Canonical a Suse už přislíbily, kdy se nové ovladače dostanou do jejich distribucí. V následujících měsících by se tak nových balíčků měli dočkat uživatelé čerstvě vydaného Ubuntu 22.04 LTS a SUSE Linux Enterprise 15 SP4.

Autor článku

Petr Krčmář pracuje jako šéfredaktor serveru Root.cz. Studoval počítače a média, takže je rozpolcen mezi dva obory. Snaží se dělat obojí, jak nejlépe umí.