RSS článků nebo komentářů

Hardware 09 Ún 2007 04:48 am

Grafické karty ATI a linux

ATI logoJiž několik let mám grafickou kartu ATI9800pro a v notebooku ATI9700mobile. Karty jsou to bezesporu dobré a v době kdy jsem si je pořizoval se držely na špičce benchmarků a hravě si poradily s každou hrou, tehdá novinku DOOM3 nevyjímaje. Obraz který produkují je opravdu kvalitní a výborně zvládají i dual-head režim.

Bohužel, jakožto linuxový uživatel už tolik značku ATI pochválit nemůžu. ATI je obecně známá “kvalitou” svých ovladačů, které běžně i několik měsíců zaostávají za hardwarem na pultech prodejců. Když jsem si přinesl domu ATI9800pro byla s některými ovladači skoro nepoužitelná a ještě minimálně čtvrt roku mi každé nové vydání ovladačů zásadním způsobem zvyšovalo grafický výkon a stabilitu. Takto “dobrá” situace je bohužel jen pod Windows, pod linuxem je ATI na tom daleko hůře.

Přes počáteční křeče ze strany ATI a pokusech o ovladač, se postupně dospělo do stavu, kdy je instalace prakticky bezbolestná, jako binární balíček. Při instalaci ATI ovladačů tak často bývá aplikován nějaký “zaběhnutý” model, který si každý buď našel, nebo ví o stránce podle které to zvládne. Bohužel, s příchodem nových Xorg všechny tyto návody zklamaly a majitelé karet ATI jen nevěřícně kroutí hlavou.

Proč nepoužít open source ovladač radeon?

Protože nefunguje! Projekt kolem ovladače radeon budiž blahořečen, ale jelikož ATI není ochotno při vývoji ovladače jakkoliv přispět nebo uvolnit potřebnou dokumentaci, postupuje projekt velice pomalu. Jde o zdlouhavé reverzní inženýrství, které je doslova otrockou prací nadšenců. Zatím ovladač radeon plně podporuje nejstarší řady karet, včetně karet ATI 9200, které mezitím ATI hodilo přes palubu. Díky projektu radeon jsou majité ATI9200 vlastně momentálně nejspokojenější. Na ATI9200 a ovladači radeon si krásně zahrajete True Combat:Elite, Cube a nebo pustíte AiGLX s Berylem. V benchmarku glxgears dosahují pěkného skóre několika set fps. Majitelé “lepších” karet jsou zatím odsouzeni k ovladači fglrx.

Fglrx je od ATI, co je špatně?

V zásadě nic, ovladač po instalaci funguje. Problém nastane v okamžiku, kdy se podíváte na výkon. Ten ani zdaleka nedosahuje stejného výsledku jako pod OS Windows, pokud nějakého vůbec dosáhne.ATI9800proATI nejenže není schopna udělat skutečně kvalitní a efektivní ovladač, ale ani nestačí dělat ovladače dostatečně rychle a udržet tak krok například s podporou aktuální verze Xorg. Uživatelé si tak musí pomáhat různými berlička, deaktivací vylepšení, které naopak Matrox a nVidia již plně podporují a poskytují tak svým majitelům vyšší užitnou hodnotu a šetří jejich nervy.

Instalace ovladače

Instalace samotná je bezbolestná buď přes balíčkovací systém konkrétní distribuce, nebo stažením aktuální verze z oficiálním stránek ATI. Pokud se vydáte cestou balíčku distribuce, hledejte balíček obsahující slova ati a fglrx. Balíčky bývají dva. Ati-fglrx je samotný ovladač a pak ati-utils, což je balíček obsahující některé utility, které rozhodně nejsou nijak zásadně potřeba. Důležité je si pohlídat, aby konkrétní verze byla určena pro vaše aktuální jádro. Pokud provede před instalací update, neměl by být problém a distribuce by to měla pohlídat za vás.
Po instalaci balíčku s ovladačem se buď držte dál howto přímo vaší distribuce nebo postupujte na vlastní pěst. Využijte prográmku aticonfig, který za vás upraví soubor xorg.conf. Plný náhled parametrů se dozvíte prostým spuštěním příkazu v konzoli, ale pro začátek si vystačíte s několika příklady na konci výpisu. Z něj se dozvíte že pro incializaci a rekonfiguraci stávajícího xorg.conf stačí úplně málo a tak do konzole zadejte:

#aticonfig --initial --input=/etc/X11/xorg.conf

Pokud máte ovladač nainstalován, můžete se ho pokusit zavést příkazem:

#modprobe fglrx

Pokud modprobe ovladač nezavede, máte s největší pravděpodobností modul sice nainstalován, ale pro jiné jadro než aktuálně používáte. Pokud jste od posledního restartu aktualizovali spolu s ovladačem i jádro, restartujte. Pokud je vše v pořádku, stačí restartovat grafické prostředí a ovladač by měl přebrat kontrolu.

Ověření běžící akcelerace

Jak jsem napsal výše, ovladač by měl přebrat kontrolu. On ji možná i přebral, ale otázkou je, zda skutečně funguje akcelerace, tedy to proč to celé podstupujeme. Zda máte či nemáte fungující ovladač a akceleraci, se dozvíte příkazy, který by měl proběhnout podobně jak je ukázáno:

$fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY RADEON 9700 Generic
OpenGL version string: 2.0.6286 (8.33.6)
$glxinfo | grep direct
direct rendering: Yes

Pokud máte výpis podobný mému, máte vyhráno a užívejte si her, my ostatní se pustíme do dalšího dobrodružství.

Takže kde je chyba?

Pokud pomineme chyby v instalaci, špatnou editaci konfiguračních souborů a další běžně řešené a dořešené háčky, dostaneme se k jádru problému. Pokud máte svůj systém aktuální, máte i aktuální verzi programu Xorg. Problém spočívá v tom, že nové Xorg obsahuje cosi s názvem AiGLX (věřte, není to nic špatného), které ovšem není ATI ovladačem podporováno. K vypnutí AiGLX níže uvedený kód, který vložte do souboru xorg.conf.

Section "DRI"
        Mode         0666
EndSection

Section "Extensions"
        Option      "Composite" "Disable"
EndSection

Section "ServerFlags"
        Option      "AIGLX" "off"
EndSection

Tento kód po restartu grafického prostředí zablokuje tu fuj-věc AiGLX, které snad ATI brzy také implementuje podporu, a nám už nic nebrání dát prostor ovladači fglrx.

Doufám, že i vám tento kód pomůže, jako pomohl spoustě mých kamarádů a že mě po dalším upgrade a restartu mé distribuce nečeká další šok a spousta chybových hlášení.

A co znamená dle ATI akcelerované?

Aktuální ovladač fglrx-8.33.6 mi na ATI9700 v testu glxgears dává krásně ubohých 250fps. Přesně stejné číslo mi generuje i ATI9800pro. V programu fgl_glxgears dostávám 500fps a ATI9800pro dělá zhruba dvojnásobek této hodnoty. Doufám, že ATI brzy zásadním způsobem tato čísla změní, doufejme že k lepšímu.

pošli na vybrali.sme.sk

4 komentářů k “Grafické karty ATI a linux”

  1. dne 09 Ún 2007 at 6:59 pm 1.the.max napsal …

    tak prave proto jsem ATi opustil a poridil si nVidii. Ted jiz v proadi druhou. Mel jsem taky 9800pro, ale ty ovladace, opravdu skoda mluvit. Jinak nic proti ATi nemam, to v zadnem pripade, ale fakt uz by si meli najmout programatory a ne nechat delat ovladace studentum na zajmovych krouzcich s vypocetni technikou, jak mi to posledni dobou pripada..

  2. dne 09 Ún 2007 at 10:29 pm 2.LuFa napsal …

    V počítači mám také nVidii. S Linuxem naprosto bez problému. A jsem za to rád :-).

  3. dne 10 Ún 2007 at 8:18 pm 3.ronny napsal …

    mno mel jsem Radeon 9200PRO .. v linuxu se mi rozbehala.. ale jen kdyz byla dobra konstalace hvezd.. s ovladaci Radeon mi to btw taky neslo.. nevim.. proste ATi a Linux nejde moc k sobe..

    mou ATi jsem prodal a vymnenil za GeForce 5200 a super :) akcelerace jede jak ma a ja jsem spokojen.. WoW jede, TC:E taky :)

  4. dne 15 Bře 2007 at 5:58 pm 4.alfa napsal …

    No ja teda nevim, nemas to nejaky polamany? Na notasu mi to bezi v pohode. Jediny co me fakt prudi je ta nepodpora AIGLX :-/

    $ glxgears
    14666 frames in 5.0 seconds = 2933.165 FPS
    14623 frames in 5.0 seconds = 2924.557 FPS
    14612 frames in 5.0 seconds = 2922.242 FPS

    $ fglrxinfo
    display: :0.0 screen: 0
    OpenGL vendor string: ATI Technologies Inc.
    OpenGL renderer string: ATI Mobility Radeon X1400 Generic
    OpenGL version string: 2.0.6286 (8.33.6)

Přidej komentář...