GPU: Grafické jednotky pro moderní počítače

Grafická karta se z poměrně bezvýznamného kusu počítačového železa proměnila během uplynulých pěti let ve druhou...


Grafická karta se z poměrně bezvýznamného kusu počítačového železa proměnila
během uplynulých pěti let ve druhou nejdůležitější komponentu moderního PC. Z
pasivních grafických čipů se vyvinuly sofistikované grafické jednotky,
označované jako GPU (Graphics Processing Unit), které svou komplexností a
výkonem mnohdy předčí i moderní CPU. To, co bylo ještě přede dvěma lety
považováno za dostatečnou kapacitu hlavní paměti, je dnes integrováno přímo na
grafické kartě.
Hlavní hybnou silou vývoje výkonných grafických akcelerátorů ovšem nebyly
profesionální CAD či vizualizační aplikace. Pro ty existovaly specializované (a
adekvátně drahé) akcelerátory a platformy již v polovině devadesátých let. Byly
to bezpochyby počítačové hry, které rozhýbaly vývoj 3D grafiky na PC. Pravdou
ovšem zůstává, že technologie a know-how pro vývoj prvních herních 3D
akcelerátorů představených v letech 1995-98 pocházelo od firem, které se
specializovaly právě na profesionální akcelerátory a platformy: vůbec první 3D
karta určená pro hráče, 3D Blaster VLB, pracovala s čipem 3D Labs GameGlint a
firmu nVidia, která uvedla svůj první čip NV1 na trh v roce 1996, pak založili
bývalí zaměstnanci SGI. Je tak trochu ironií osudu, že toto know-how se po
několika letech vrátilo oklikou zpět do oblasti profesionální grafiky a 3D
vizualizace: jsou to totiž právě technologie firmy nVidia vyvinuté pro
počítačové hráče, které v současné době do značné míry diktují tempo a zejména
ceny v oblasti profesionálních 3D karet.

Trh grafických akcelerátorů
Zatímco dříve existovalo značné množství výrobců grafických karet, kteří
vyvíjeli čipy výhradně pro vlastní produkci, dnes si tuto filozofii udrželo
pouze několik menších firem. Trhu s grafickými akcelerátory tak nevládnou
jednotliví výrobci grafických karet jako takových, ale výrobci jednotlivých
čipů, označovaných jako GPU (Graphics Processing Unit) v současné době se jedná
prakticky o duopol ATI a nVidie. Další výrobci se tak specializují buď na
cenově výhodná řešení (SiS), nebo se věnují specifické části trhu, jako jsou
profesionální uživatelé, kteří vyžadují špičkové 2D technologie či podporu tří
monitorů (Matrox). Značná část trhu připadá pochopitelně na integrovaná řešení,
dodávaná z větší části Intelem, z menší části pak firmou VIA (technologie S3)
či SiS. Svá integrovaná řešení 3D grafiky využívající UMA (Unified Memory
Architecture sdílení systémové paměti grafickým čipem) nabízejí i ATI a nVidia.
Specifickou oblastí jsou speciální grafické moduly pro přenosné počítače i zde
kontrolují trh ATI a nVidia.
Grafické karty postavené na GPU stejného typu (například GeForce4 Ti 4200 či
ATI Radeon 9500) tak obvykle nabízejí prakticky stejný výkon, neboť jsou
postaveny na shodném designu a obdobných komponentách. Rozdíly mezi
nejlevnějšími a nejdražšími kartami stejného typu tak bývají především v
softwarové výbavě, v některých případech pak ve kvalitě chlazení či
komponentách, které mohou ovlivnit kvalitu 2D obrazu, a v neposlední řadě též v
nutnosti platit za jméno renomovaného výrobce.
Jak vlastně vypadá současná grafická karta? Co umí, čím se vyznačuje a jaké
parametry musí mít? Společným jmenovatelem grafických karet, bez ohledu na
značku a typ jejich GPU, je rozhraní DirectX. Právě plná kompatibilita s jistou
verzí DirectX de facto definuje jednotlivé generace grafických karet. V
současné době tak koexistují na trhu tři generace: karty plně kompatibilní s
DirectX 7, s DirectX 8 a s DirectX 9.

Generace DirectX 7
GPU: ATI Radeon, Radeon 7500, nVidia GeForce, GeForce2/2 MX, GeForce4 MX
Klíčovou funkcí, která tyto karty odlišila od předchozí generace (zastoupené
například čipy TNT2 či ATI Rage 128) je technologie označovaná jako T&L
(Transformation & Lighting) tedy transformace a nasvícení 3D scény. Tuto funkci
dříve prováděl procesor jedná se o poměrně velké množství maticových výpočtů,
které jsou v případě GPU s podporou T&L vypočítány přímo na grafické kartě. Ta
prostě obdrží informace o počátečním stavu scény a potřebné výpočty související
s rotací, zvětšením, zmenšením či posuvem jednotlivých objektů pak provede
sama. Stejně tak spočítá hodnoty světlosti jednotlivých vrcholů (verticí)
trojúhelníků, ze kterých se 3D scéna skládá.
Karty kompatibilní s DX 7 jsou v současné době považovány za low-end:
představují základní výbavu nutnou pro hraní současných her, z nichž některé
již vyžadují funkci T&L. GPU GeForce2 byly navíc první generací, kterou nVidia
upravila pro využití v profesionálních CAD a vizualizačních aplikacích do
podoby grafických čipů Quadro. Zajímavé přitom je, že vlastní GPU se od těch
určených pro PC hry neliší rozdíl je pouze v ovladačích, BIOSu a několika
komponentách na kartě.
Typická konfigurace těchto grafických karet obsahuje 32 až 64 MB paměti (dříve
SDRAM, dnes už prakticky výhradně DDR SDRAM) a televizní výstup S-VHS (který
může fungovat i v režimu kompozitního videa). Některé karty (např. ATI Radeon
7500 či GeForce4 MX460) podporují taktéž zobrazení na dvou monitorech.

Generace DirectX 8
GPU: ATI Radeon 8500/8500LE, Radeon 9000, nVidia GeForce3, GeForce4 Ti
Technologie DirectX 8 přinesla revoluci v přístupu ke tvorbě 3D grafiky. V
předchozích verzích tohoto API (přesněji jeho 3D části Direct3D) by-ly všechny
funkce a efekty pevně definovány. Při tvorbě 3D grafi-ky tedy bylo nutné
vycházet pouze z dostupné množiny funkcí a efektů, případně z jejich kombinací.
Karty plně kompatibilní s DX 8 obsahují obvody pro práci s geometrií a povrchy
3D objektů: vertex shader, respektive pixel shader. Tyto obvody jsou plně
programovatelné, a umožňují tak vytvářet speciální efekty, které jsou spočítány
přímo uvnitř GPU bez účasti procesoru. Pomocí vertex shaderu je možné nejen
přenést další funkce související s animací 3D modelů z CPU na GPU, ale vytvářet
nové efekty, používat složitější efekty, automaticky dopočítávat mezisnímky
animace či modelovat 3D povrch pomocí projekce dvourozměrného obrazu. Lze tak
např. docílit realisticky počítaného poškození aut v závodní hře tedy nikoliv
poškození "předem připraveného" autory, ale poškození a deformace karoserie,
které jsou spočítány na základně rychlosti a úhlu nárazu auta a předmětu, do
něhož jste narazili. Podobné možnosti platí i v případě pixel shader obvodů: ty
nahrazují pevně definovanou množinu funkcí a efektů (jako je bilineární
filtrování či různé efekty) možností tvořit vlastní efekty či filtry (podobné
například filtrům ve Photoshopu). V reálném čase tak lze docílit například
efektu nazývaného cel shading, který způsobí, že 3D scéna vypadá jako klasický
animovaný film.
Podpora DX 8 je běžná u karet střední a vyšší třídy. Současné hry prozatím tyto
funkce nevyžadují, některé nejnovější tituly je ale podporují pokud máte starší
typ grafické karty, budete ochuzeni o některé efekty, případně se musíte smířit
s nižší rychlostí hry.
Typická konfigurace těchto karet obsahuje 64 až 128 MB rychlé paměti DDR,
televizní výstup a obvykle podporu dvou monitorů (jeden výstup klasický D-Sub,
druhý pak DVI).

Generace DirectX 9
GPU: ATI Radeon 9700, 9500, nVidia GeForce FX
Hlavním nedostatkem všech GPU byl až doposud fakt, že výpočty v jednotkách
pixel a vertex shader probíhaly celočíselně. Zaokrouhlování výsledků tak,
zejména při mnoha po sobě jdoucích výpočtech nutných pro různé světelné efekty,
znamená, že nelze docílit fotorealistického vzhledu 3D grafiky. DirectX 9 a
nejnovější GPU tento problém pochopitelně řeší tím, že jsou schopny provádět
všechny výpočty v plovoucí desetinné čárce. Krom toho je jejich architektura
upravena pro maximální výkon, potřebný pro využití možností, které nové API
nabízí. Teoreticky je tak možné rozhýbat na PC scény, které by dříve bylo možné
spočítat pouze na pracovních stanicích. Plné kvality, detailů a rozlišení
srovnatelného s filmy, jako je Toy Story, se ale dočkáme až u nadcházejících
verzí grafických procesorů.
V současné době existují pouze dvě GPU, která podporují DX 9. Jako první přišel
na podzim 2002 čip R300 firmy ATI, který se v současné době dodává i ve slabší
a levnější variantě RV300 a pohání karty Radeon 9700, respektive 9500. Právě
nyní přichází na trh taktéž novinka firmy nVidia: čip NV30, který pohání
grafické karty GeForce FX.
Karty nejvyšší třídy, které podporují DirectX 9, jsou standardně osazeny 128 MB
nejrychlejší paměti DDR s přenosovými kapacitami až zhruba 20 GB/s. Cena se
pohybuje okolo 10 000 Kč.
Skutečnost, že je jistý grafický čip plně kompatibilní s jistou verzí DirectX,
ale automaticky neznamená, že musí být po všech stránkách výkonnější než jiné,
starší GPU. Tak je tomu kupříkladu u čipu Radeon 9000 firmy ATI. Ten je sice
plně kompatibilní s DX 8, po stránce hrubého výkonu je ale pomalejší než
některé karty předchozí generace (například GeForce4 MX460). Stejně tak některé
karty GeForce3 mohou být v mnoha hrách o něco pomalejší než GeForce2 Ultra.

Mobilní GPU
Grafické čipy pro přenosné počítače tvoří prakticky samostatný trh. Zatímco
dříve byla drtivá většina displejů v noteboocích obsluhována grafickými obvody
integrovanými v mobilním čipsetu, jsou dnes přenosné počítače střední a vyšší
třídy poháněny speciálními verzemi GPU ty jsou obvykle odvozeny od stolních
verzí, navíc ale disponují funkcemi pro šetření energií a často mají
integrovánu paměť DDR o velikosti 16 až 64 MB přímo v GPU. Běžné přitom je, že
mobilní grafické akcelerátory jsou zhruba o generaci pozadu za technologiemi
dostupnými pro stolní počítače. NVidia tak v současné době nabízí GeForce2 Go a
GeForce4 Go s podporu DX 7, pro přenosné pracovní stanice existuje i mobilní
verze čipu Quadro. ATI nabízí Mobility Radeon a Mobility Radeon 7500 s podporou
DX 7 a nově i Mobility Radeon 9000 s podporou DX 8. V některých noteboocích
jsou navíc GPU instalovány na speciálním modulu, který lze vyměnit, tedy
upgradovat tyto moduly jsou ale obvykle specifické pro danou řadu notebooku
nebo pro jistou značku.

Architektura moderního GPU
Jak vypadá nejmodernější GPU, lze výborně předvést na příkladu čipu ATI R300,
který používají karty řady Radeon 9700.
R300 se na první pohled podobá současným CPU. Obsahuje 110 milionů tranzistorů
(to je víc než současné nejrychlejší procesory), které tvoří pět základních
částí: paměťový řadič, AGP rozhraní, obvody pro zpracování 2D obrazu a videa,
FPPU (Floating Point Pixel Unit) a vertex shader. Nejrychlejší varianta čipu
pracuje na frekvenci 325 MHz a je vyráběna technologií 0,15 mikronu.
256bitový paměťový řadič se ve skutečnosti (kvůli lepší efektivitě) skládá ze
čtyř 64bitových řadičů, které spolu navzájem komunikují přes speciální přepínač
a jsou spojeny se čtyřmi 64bitovými paměťovými kanály. Paměť DDR pracuje v
případě Radeonu 9700 na frekvenci 310 MHz (ekvivalent 620 MHz). Rozhraní AGP
zajišťuje komunikaci s čipsetem základní desky a přímý přístup do paměti přes
port AGP. Obvody pro zpracování 2D a videa procházejí v poslední době pouze
minimálním vývojem nejvýznamnější rozšíření se v minulosti týkalo podpory dvou
monitorů.
Vertex shader se stará o operace s vrcholy (trojúhelníky) ať už se jedná o
pouhou přípravu scény, rotaci a nasvícení či složitější programovatelné
operace. V případě R300 je to jednotka obsahující čtyři paralelní
programovatelné pipelines ("potrubí"), z nichž každé je vybaveno 128bitovým
vektorovým procesorem.
FPPU má na starosti aplikaci textur a efektů na povrchy jednotlivých objektů,
přičemž se jedná o nejkomplexnější část GPU, obsahující největší počet
tranzistorů. Skládá se z osmi paralelních 128bitových pipelines, které jsou
plně programovatelné a pracují v plovoucí desetinné čárce.

Jak šel čas
1995: První 3D akcelerátor určený pro hráče uvádí na trh firma Creative. 3D
Blaster VLB je postaven na čipu GameGlint firmy 3D Labs a vyžaduje VLB slot.
Jedná se o přídavnou kartu a funguje s cca půltuctem her.
1996: V oblasti poloprofesionální grafiky dominuje Matrox Millenium II
obsahující některé omezené 3D funkce. NVidia uvádí čip NV1, který kombinoval
funkce 2D, 3D a zvuku na jedné kartě. S3 uvádí čip Virge s podporou 3D
typického zástupce "nulté" generace. Výkonem a funkcemi ale dominují novinky
Voodoo Graphics firmy 3dfx a PowerVR od firmy Videologic.
1997: Trhu dominuje Voodoo Graphics spolu s PowerVR, objevují se ale i karty
první generace, které v sobě kombinují 2D a 3D zejména nVidia Riva 128.
1998: 3dfx uvádí druhou generaci přídavné 3D karty, Voodoo2, zatímco ATI
představuje Rage Pro, jeden z prvních čipů navržených pro AGP rozhraní. NVidia
představuje na sklonku roku TNT, kartu, která kombinuje kvalitní 2D a 3D s na
svou dobu nebývalou velikostí paměti 16 MB.
1999: Konkurence na trhu sílí. NVidia přechází s uvedením TNT2 na šestiměsíční
vývojový cyklus, 3dfx uvádí svou poslední úspěšnou generaci Voodoo3, ATI
odpovídá s čipem Rage 128, který bohužel na konkurenci ztrácí v kvalitě obrazu.
Matrox uvádí na trh karty s čipem G400, tedy první adaptéry s podporou dvou
monitorů. Na sklonku roku uvádí nVidia čip třetí generace: GeForce 256 a
označuje jej termínem GPU Graphics Processing Unit, analogicky k CPU.
2000: NVidia k velkému překvapení uvádí již v první polovině roku GeForce2 GTS
(Giga Texel Shader), GPU, které dokáže spočítat více než miliardu texelů za
vteřinu. Novinky jako ATI Radeon, 3dfx Voodoo5 a S3 Savage 2000 tak mají jen
malé šance na výrazný úspěch. T&L (Transformation & Lighting) se prosazuje jako
budoucí standard. Na konci roku přichází výkonnější GeForce2 Ultra.
2001: První pololetí přináší opět novou generaci GPU nVidia, tentokráte
GeForce3 obsahující obvody pixel a vertex shader, a tudíž i plnou podporu
rozhraní DirectX 8. NVidia odkupuje aktiva 3dfx a S3 se stává součástí
společnosti VIA jediným skutečným konkurentem firmy nVidia tak zůstává kanadská
společnost ATI, která ve druhé polovině roku uvádí vlastní DX 8 kartu Radeon
8500 a zároveň oznamuje přechod na obchodní model konkurence karty s čipy ATI
tak bude na trh dodávat větší množství výrobců (v Evropě jako první Hercules).
2002: Jako první uvádí šestého února nové čipy nVidia. GeForce4 Ti (DX8) a
GeForce4 MX (DX 7) mají nahradit karty GeForce3, respektive GeForce2, GeForce4
Go (DX 7) směřuje na trh přenosných počítačů. V polovině roku přichází Matrox
po dlouhých třech letech s prvním GPU: Parhelia 512. Některé z funkcí jsou sice
zcela nové, stejně jako podpora tří monitorů, svým výkonem ale Parhelia příliš
nepřesvědčila. SiS uvádí řadu grafických čipů Xabre, které konkurují
nejlevnějším GPU ATI a nVidia. Na podzim pak ATI jako první uvádí GPU
podporující DirectX 9, Radeon 9700, a získává tak bezmála půlroční náskok před
konkurencí.
2003: NVidia plánuje uvedení GeForce FX (DX 9) na trh v průběhu března. Nové
GPU je však sužováno problémy s chlazením a napájením. Výroba všech grafických
karet bude zřejmě probíhat pod dohledem nVidie. ATI uvede na jaře výkonnější
variantu posledního Radeonu s označením 9900.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.