Hlavní navigace

Grafické karty nVidia v Linuxu

Miroslav Petříček

Grafické karty postavené na čipech nVidia patří mezi nejprodávanější zobrazovací adaptéry vůbec. Pokud si koupíte nový počítač, je dost pravděpodobné, že v něm naleznete právě takovouto kartu. V dnešním článku se tedy podíváme, jak lze takovou kartu rozchodit v Linuxu, a to včetně její OpenGL akcelerace.

Firma nvidia se rozhodla nepodporovat vývoj ovladačů založených na technologii DRI, jak je tomu běžné u výrobců ostatních grafických čipů, například ATI, Matroxu nebo 3Dfx. Namísto toho vyvíjí a dodává své vlastní, bohužel closed-source, ovladače, založené na rozšíření XServeru GLX. Podporovány jsou, s výjimkou čipů nv1 a Riva128, všechny grafické procesory od nVidie, tedy zejména RivaTNT, TNT2, GeForce, Geforce2 atd. Ovladače podporují i zvláštní funkce některých karet, jako je výstup na více monitorů (Twinview) a výstup na TV obrazovku (TV out).

Předpokládejme nejprve, že máte XFree správně nainstalované a karta byla konfiguračním nástrojem korektně detekována a zapsána v souboru XF86Config. Tím máte funkční X-ka, ovšem bez podpory OpenGL akcelerace. K tomu je potřeba použít zmíněné ovladače.

Ty jsou výrobcem rozdělené do dvou separátních balíčků. Jednak je to modul pro jádro „NVidia“, od kterého ještě existuje zdrojový kód, a dále je to vlastní GLX ovladač pro XFree86, který se dodává pouze v binární formě. Najdete je vedle ovladačů pro jiné OS na www stránkách výrobce.

Pokud je vaše distribuce postavena na rpm, je instalace snadná. Buď si můžete stádnout balíček připravený přímo pro vaši distribuci (podporovány jsou aktuální verze RedHatu, SuSE a Mandrake), nebo, používáte-li jádro odlišné od toho, které se dodává s distribucí (třeba jen updatované), je potřeba překompilovat si balíček s jaderným modulem:

rpm --rebuild NVIDIA_kernel-1.0-1251.src.rpm

Sestavený balíček najdete v adresáři /usr/src/redhat/RPMS/i386 nebo ekvivalentním. Po instalaci jaderného i GLX modulu (rpm -Uvh jmeno_balicku) musíte ještě pozměnit nastavení X serveru. Většinou stačí jen najít řádku

Driver "nv"

v souboru XF86Config-4 a změnit ji na

Driver "nvidia"

Čímž dojde ke změně standardního X Window ovladače na nově naistalovaný. Při startování X Window byste nyní měli vidět grafickou obrazovku s logem nVidia. Informace o zavedeném ovladači si můžete ověřit v souboru /proc/nv/card0, například:

----- Driver Info -----
NVRM Version: 1.0-1512
------ Card Info ------
Model:        RIVA TNT2 (M64)
IRQ:          9
Video BIOS:   02.05.13.00
------ AGP Info -------
AGP status:   Enabled
AGP Driver:   NVIDIA
Bridge:       Intel 440BX
SBA:          Supported [enabled]
FW:           Unsupported [disabled]
Rates:        2x 1x  [2x]
Registers:    0x1f000203:0x00000102

Nyní, když tedy máte vaši kartu v provozu, zbývá vyzkoušet, jak to vlastně funguje. Prohlížení grafických GL screensaverů vás asi rychle přestane bavit, a tak si co nejdříve pořídíte nějakou tu 3D hru. Dostatečný výběr naleznete například na téhle stránce.

Nejpopulárnější 3D hrou je nepochybně Quake, jejíž poslední verze Quake 3 byla portována i na Linux. Narozdíl od jiných Linuxových komerčních her, které se shánějí jen obtížně, zde máte možnost koupit si běžně dostupnou verzi pro Windows a stáhnout si k ní asi 30 MB binární balíček, který ji oživí v Linuxu. Co se týče výkonu karet nVidia v Linuxu, ve hře Quake III jsem nezaznamenal výraznější rozdíl mezi výkonem mého počítače a obdobného systému s Windows, o čemž ostatně svědčí i tento srovnávací test publikovaný na známých stránkách Tom's Hardware Guide. Stejně tak kvalita výstupního obrazu byla zcela totožná s výstupem získaným ve Windows.

Pokud si nechcete kupovat celou hru, můžete si na stejném místě stáhnout její demoverzi, která je omezena jen počtem hracích levelů.

Quake

Pokud by se vám zdála rychlost vykreslování pomalá, máte podobně jako ve Windows možnost přetaktovat si grafický čip. Potřebujete k tomu pevné nervy a program nvclock, který naleznete tady. Jde o jednoduchou utilitu, která umožňuje zvýšit frekvenci taktování grafického čipu a pamětí nad standardní úroveň, určenou výrobcem karty. Protože se jedná o poměrně drastickou operaci, která může vést k nestabilitě počítače nebo dokonce k poškození grafické karty, měli byste si její použití dobře rozmyslet.

Program je možné použít buď ve znakovém režimu, nebo jej ovládat přes dodávané grafické rozhraní GTK nebo Qt. Jeho ovládání je opravdu jednoduché, jak je patrné z přiloženého obrázku.

Ovládání

Udělal jsem sérii měření na mé tak trochu obstarožní kartě RivaTNT2 M64, při které jsem zkoušel po krocích zvyšovat taktování čipu i pamětí a současně měřil snímkovou frekvenci v demu Quake III. Výsledky ukazují, že moji kartu bylo možné pomocí nvclocku přetaktovat ze 125/125 až na 160/150, přičemž výkon se zvýšil ze 38 fps na 45.8 fps, což je více než 20%. Z měření také vyplývá, že frekvence pamětí má na výkon větší vliv než taktování čipu. Při vyšších rychlostech než uvedených 160/150 docházelo k chybám v obraze a stalo se mi také, že mi úplně zamrzl počítač. Platí tedy stejné zásady jako při přetaktování procesoru – pokud chcete stabilní systém, nepřetaktovávejte, a když už, tak si alespoň opatřete odpovídající chlazení, protože okolí grafické karty se přetaktováním znatelně více zahřívá.

Zajímavé odkazy:

Našli jste v článku chybu?

2. 2. 2006 16:34

nic (neregistrovaný)
Mam linux suse 10 snzil som sa tam nainstalovat ovladac od nVidie, ktory som si stiahol z oficialnej stranky www.nvidia.com ale vobec mi to nejde. Prosim poradte mi ako to mam nainstalovat. Nazov suboru NVIDIA-Linux-x86-1.0-7676-pkg1.run

24. 6. 2005 12:06

Krby (neregistrovaný)
Trosku sem se s tim popral, neco vygooglil (nejdriv sem dal sh...--extract-only) a pak cd ... a pak make install. Skoncil sem u tohohle:cd usr/src/nv; make install
make[1]: Entering directory `/home/krby/NVIDIA-Linux-x86-1.0-7664-pkg1/usr/src/nv'
./conftest.sh: line 1: cc: command not found
If you are using a Linux 2.4 kernel, please make sure
you either have configured kernel sources matching your
kernel or the correct set of kernel headers installed
on your system.

If you are using a Linu…







Vitalia.cz: Jmenuje se Janina a žije bez cukru

Jmenuje se Janina a žije bez cukru

120na80.cz: 5 nejčastějších mýtů o kondomech

5 nejčastějších mýtů o kondomech

Podnikatel.cz: Změny v cestovních náhradách 2017

Změny v cestovních náhradách 2017

DigiZone.cz: TV Philips a Android verze 6.0

TV Philips a Android verze 6.0

Vitalia.cz: Taky věříte na pravidlo 5 sekund?

Taky věříte na pravidlo 5 sekund?

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

Vitalia.cz: Mondelez stahuje rizikovou čokoládu Milka

Mondelez stahuje rizikovou čokoládu Milka

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

120na80.cz: Na ucho teplý, nebo studený obklad?

Na ucho teplý, nebo studený obklad?

Vitalia.cz: Potvrzeno: Pobyt v lese je skvělý na imunitu

Potvrzeno: Pobyt v lese je skvělý na imunitu

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Podnikatel.cz: Udávání kvůli EET začalo

Udávání kvůli EET začalo

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Vitalia.cz: Pamlsková vyhláška bude platit jen na základkách

Pamlsková vyhláška bude platit jen na základkách

DigiZone.cz: Rádio Šlágr má licenci pro digi vysílání

Rádio Šlágr má licenci pro digi vysílání

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR

Podnikatel.cz: Chtějte údaje k dani z nemovitostí do mailu

Chtějte údaje k dani z nemovitostí do mailu

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu