Autor: Cappy Publikováno: 4.prosince 2006 |
To jen v NVIDII o celém projektu G80 věděli úplně všechno, ale až do poslední chvíle si z veřejnosti dělali blázny a jen mlžili a mlžili. Při každé příležitosti totiž opakovali stejnou pohádku a na otázku "co přinese DirectX 10 a jak to vypadá s Unifikovanými Shadery?" odpovídali, že "Unifikované Shadery jsou jen jednou z možností dalšího vývoje" a že ačkoliv je to určitě "budoucnost grafických čipů pro PC, tak to není striktně dáno" a "není nutné mít unifikované Shadery pro DirectX 10 za každou cenu". S tím, že v "některých případech může být tradiční design vycházející z původní OpenGL pipeline rychlejší". Samozřejmě to z velké části byla pravda, takže nebyl důvod, proč těmto informacím nevěřit... ![]() Pochopitelně tím vznikl klamný dojem "jako že se u NVIDIE nic neděje". ATI si propaguje svoje USA (Unified Shader Architecture) a NVIDIA si jede po svém (postaru). Nic divného na tom nebylo, protože ATI použila USA už v roce 2005 pro Xenos (C1) grafický čip pro Xbox 360 (ale bez DX10) a NVIDIA v té době neměla nic, co by USA byť jen vzdáleně připomínalo. Mimochodem, R600 naplánovaný na jaro 2007, bude představovat už druhou generaci USA pod křídly AMD(ATI), takže vážně nebyl důvod, proč jenom uvažovat nad tím, že by měla mít NVIDIA architekturu shodnou s USA. No vidíte, a nakonec má... DirectX 10 klepe na dveře Jedním z hlavních lákadel nového hardwaru je jeho plná podpora pro nové rozhraní DirectX 10. Hry pod DX10 by příští rok měly vypadat nějak takhle: ![]() ![]() ![]() Historicky vzato, vývoj G80 nezačal včera. Začal už před čtyřmi lety. V tu dobu se teprve řešily teoretické problémy. Intenzivní vývoj probíhal poslední dva roky. Překvapuje Vás to? Ano, jistě. Asi se Vám bude zdát konec roku 2004 trochu vzdálený a to nemluvím ani o roku 2002, kdy to vlastně všechno začalo, ale v NVIDII pracují na vývoji grafických čipů obvykle dvě nezávislé skupiny inženýrů, které mají pod sebou další "vývojářské sekce", které každý projekt rozpracovávají. Vždy se věnují vývoji produktů na přeskáčku a tento vývoj trvá asi tak dva roky. Oficiálně rok 2002 patřil GeForce 4 (v ten rok, v únoru, byla uvedena), neoficiálně však patřil rok 2002 startu vývoje GeForce 8. Ještě pro doplnění pár statistických údajů: NVIDIA G80 stál přes 400 milionů dolarů, přesněji 475 milionů dolarů, asi 10 miliard a 450 milionů Kč a odpracováno na něm bylo přes 1000 člověko/let.
Technické specifikace GeForce 8800
Na obrázku je srovnání ATI RADEONu X1950 XTX a GeForce 8800 GTX (dole): ![]() Bližší pohled do jádra ![]() Dohromady jich je 128 a jsou označeny jako "SP", zkratkou pro "Stream Processor". V tomto případě se toto označení dá volně přeložit jako "proudový procesor", což ale není úplně přesné, protože jde o "procesor pro proudové zpracování sad a skupin vstupních a výstupních dat". Je to základní výpočetní jednotka jádra a je jich opravdu hodně. Pod osmi skupinami Stream procesorů se nacházejí Texture Address Units (modré-horní, adresování textur) a Texture Filtering Units (modré spodní, filtrování textur), které se starají o bilineární, trilineární a anizotropní filtrování, tedy zaostření textur pozorovaných pod velkým úhlem. Dobré je, že tyto jednotky mají i svojí vlastní L1 cache, která je zase přes křížový přepínač (prostě takovou výhybku) propojena do L2 cache a také na 6 výstupních ROP částí a do frame bufferu (FB). Celkem to dává 384-bitový (6 x 64-bit) přístup do paměti, což už je pořádně široká "dálnice". ![]() K čemu je to vlastně dobré? Inu, každá komplexní scéna u moderních her je přecpaná vizuálními efekty a to vyžaduje bezprecedentní výkon. Jedině tak si jí můžeme vychutnat na plné detaily, ve vysokém rozlišení a hlavně, v rozumné rychlosti. Na většině "normálních" grafických čipech s tradičním designem se výpočet pokročilých efektů protáhl, protože se obvykle nezvládl při jednom průchodu čipem. Buď to neumožňovalo API (u starých verzí), konkrétní hardware, občas i lenost programátorů optimalizovat a tak dále nebo prostě chyběl dostatek výpočetních jednotek. Jednou bylo ve hře více vertex shaderů, podruhé je zase více pixel shaderů, takže se vždy některá část čipu zbytečně flákala. Zatížení v průběhu času vypadalo takto – a nikdy to není tak akorát: ![]() Aby to nebylo tak jednoduché, tak třeba taková GeForce FX zvládla při vykreslování shader efektů během jednoho taktu maximálně 4 pixely (někdy ani to ne), zatímco třeba takový RADEON 9700 zvládl obvykle 8 pixelů (zjednodušeně řečeno) a tím pádem poskytoval v pixel shader operacích mnohem vyšší výkon (třeba v Half-Life 2). A také záleží na tom, jak jsou jednotlivé shadery napsány, jak pokročilý/náročný shader je. Do budoucna je jasné, že vývojáři budou využívat v DX 10 daleko komplexnější a delší shadery a současný design grafických čipů by už jejich potřebám nevyhovoval. Stará vs. nová Když navážu na předchozí větu, tak je to mimojiné z toho důvodu, že u tradičního designu práce čipu na různých scénách vypadala třeba následovně. Obrázek popisuje situaci, kdy má čip 4 jednotky Vertex Shaderů a 8 jednotek Pixel Shaderů. V první scéně je ale hromada vertex shaderů a skoro žádné pixel shadery. Výsledkem je „idle hardware“ (nečinný hardware). V druhém případě je to přesně na opak a zase je hodně pixel shaderů a nejsou vertex shadery. Opět „idle hardware“. ![]() Vraťme se k jádru G80. Jak jsem se už zmínil (a musím to ještě zopakovat), uvnitř jádra G80 nejsou žádné samostatné Vertex nebo Pixel Shader jednotky, ale generalizované FPU (floating-point) procesory schopné pracovat se vším, co do GPU přijde. S vrcholy trojúhelníků, s pixely nebo s jakýmkoliv typem dat. Každý SP může být dynamicky kdykoliv požádán o zpracování něčeho jiného. Prostě podle potřeby. Pak to vypadá třeba takhle: ![]() Jak vidíte, u US (unifikovaných shaderů) nehrozí, že by nějaká část čipu zůstala nevytížená. Navíc v budoucnu, pokud by dejme tomu vznikl nějaký (teď plácnu) "AI shader", "balistický shader", "deformační shader", "audio shader" (co já vím), tak budou z hlediska kompatibility a výkonu použitelné na tomto hardwaru. Jestliže na počátku stála otázka: „Odkud se výkon GeForce 8800 vlastně bere?“ Tak odpověď zní: Masivní paralelismus výpočtů. To je alfa a omega výkonu GeForce 8800. Navíc se NVIDIA rozhodla výkon čipu podpořit netradičním opatřením. Kdyby šlo o obvyklý design, tradiční grafická pipeline, SP by pracovaly na frekvenci čipu, která je v tomto případě 575 MHz (nebo 500 MHz). Ale u verze GTX pracují SP nezávisle na 1350 MHz (nebo na 1200 MHz u GTS). Proto dává GF 8800 tak brutální výkon v plovoucí desetinné čárce. Kvalita obrazu V NVIDII se nevěnovali jenom zlepšení výkonu, ale také zlepšení kvality obrazu. Celé to zahrnuli do pojmu a souborů technologií pojmenovaných jako „Lumenex Engine“ (na obrázku zesvětleno): ![]() Česky řečeno, jde o nový antialiasing, o nové anizotropní filtrování, nové HDR barvy a zobrazovací engine. Kromě tradičního multi-samplingu (MSAA) a super-samplingu (SSAA) je tu nová metoda vyhlazování nazvaná Coverage Sampling (CSAA). Ten využívá nový algoritmus k produkování kvalitního obrazu a přitom má mnohem menší negativní dopad na výkon. Zároveň podporuje Transparency Antialiasing, detekuje tedy průhledné alfa textury, které se používají na drátěné pletivo nebo na listoví stromů. ![]() Výsledky jsou vizuálně velice dobré a neméně dobré jsou i výsledky dopadu na výkon: ![]() A jestliže antialiasing vyhlazuje zuby v obraze, anizotropní filtrování zaostřuje textury pozorované pod velkým úhlem. Bez různých druhů filtrování by nebylo možné zobrazit korektně všechny detaily textur. Obraz by byl jenom rozplizlý, protože textury jsou 2D mapy a při jejich pootočení ve 3D o nějaký úhel znamená zhustit celý obrázek do menšího prostoru. Ze 100 procentního pohledu třeba jenom na 25 procentní. To znamená, každé 4 pixely v řadě zprůměrovat a udělat z nich 1. GeForce 8800 má metodu zaostřování dotaženou téměř k dokonalosti. Takhle vypadalo anizotropní filtrování na GeForce 6 a 7 – spodní obrázek pak pochází z GeForce 8800: ![]() Kvality Lumenex Enginu dokazuje i tento výsledek z testovací aplikace. Zobrazen je cylindrický tunel, který efektivně zachycuje všechny možné úhly ve kterých se mohou textury nacházet. Pokud hardware neaplikuje anizotropní filtrování na všechny části scény, objeví se barevné artefakty. GeForce 7 je vlevo, GeForce 8 v pravé polovině obrázku. Výsledek je téměř dokonalý. ![]() Součástí moderních her jsou i HDR barvy (High Dynamic Range Colors). Je to technika renderingu, která používá velké rozsahy nasvícení a kontrastu. GeForce 8800 využívá pro HDR novou přesnost výpočtů, která je 32-bitová v plovoucí desetinné čárce pro všechny barevné kanály. Červenou, zelenou, modrou a alfa kanál, takže dohromady 128-bitová přesnost, namísto normální 64-bitové. ![]() Dnešní displeje používají 8 bitů informace pro každou barvu, umožňující zobrazí 16,7 milionů barev. Ovšem, lidské oko je mnohem citlivější a dokáže zachytit větší rozsah barev, odstínů šedi a světel. Proto má G80 10-bitovou zobrazovací pipeline, která dovoluje zobrazit 1 miliardu unikátních barev. A to je rozdíl… DirectX 9 vs. DirectX10 V tuto chvíli nemůžeme říct, jak moc je GeForce 8800 dobrá v DirectX 10 hrách, jelikož zatím žádné nejsou na trhu, ale DirectX 10 je přesně tou věcí, o kterou půjde v budoucnu především. Za zmínku hlavně stojí přítomnost Shader Modelu 4.0 a nového Geometry Shaderu, který ve specifických operacích dokáže odlehčit procesoru (cpu). DirectX 10 pipeline (vpravo) je oproti DirectX 9 pipeline (vlevo) mnohem komplexnější a propracovanější. ![]() 2. část - Benchmarky Výkony GeForce 8800 jsou jedním slovem úžasné! Doufám, že se na začátku příštího roku budeme stejně rozplývat i nad RADEONem R600, protože výkony G80 jsou famózní, za vším očekáváním. Dá pohodlně 11000 bodů v 3D Marku 2006 v rozlišení 1024x768, což je téměř dvojnásobek toho, co dokázala předešlá nejvýkonnější karta NVIDIE. Ovladače navíc nejsou plně odladěné. Vlastně nejsou odladěné vůbec. Takže za nějaký čas by se mohlo ještě pár věcí vylepšit a možná se povede dotáhnout to na nějakých 11500 nebo možná 12000 bodů. A stejné to může být u her, třeba u Half-Life 2: Lost Coast, protože Source engine od Valve brzy dostane podporu multi-threadingu a to může znamenat mnoho. Řada zahraničních recenzentů také přiznává, že to bylo možná poprvé, kdy i oni sami pocítili potřebu monitoru s rozlišením 2560x1600 bodů a to si ještě musíme uvědomit, že spousta benchmarků je limitována možnostmi procesoru. Takže GeForce 8800 má ohromný potenciál. I když, a na to se také nesmí zapomínat, skutečný výkon tohoto next-gen hardwaru prověří jedině až next-gen hry. Crysis nebo Unreal Engine 3 a DirectX 10. Pojďme se už ale mrknout na jednotlivé příklady: Quake IV Stará známá klasika. Open GL. A výkony bez konkurence. Tím to začíná a končí. Abyste mohli GeForce 8800 alespoň nějak konkurovat, potřebujete nějaký starší hardware zapojit do páru. ![]() F.E.A.R. Tato FPS obsahuje hodně shaderů, textury s vysokým rozlišením ve vrstvách, místy dynamické stíny, různé nextgen efekty jako je distorze obrazu, částicové efekty a detailní modely. Před rokem největší zabiják výkonu. A dnes? Pohodlně hratelná věc i na single řešení s počtem vykreslených snímků 80 za vteřinu, i v rozlišení 1600x1200 a se zapnutým pokročilým antialiasingem a anizotropním filtrováním. GeForce 8800 GTX dosahuje výborných výsledků v průměrném výkonu, ale hlavně nedovoluje spadnout pod 30 fps ani v případě nejnáročnějších částí scény. Výsledkem je naprosto plynulé vykreslování. ![]() Half-Life 2 Další na shadery bohatá hra se skvostnou grafikou. Hodně sází na efekty světla, HDR barvy, odlesky a textury s vysokým rozlišením. Ani tady se GF 8800 nenechá zahanbit, bez ohledu na vysoké rozlišení je její výkon perfektní. Half-Life 2 její architektuře sedí natolik, že poráží i SLI a vyrovná se i tomu nevýkonnějšímu CrossFire v podobě dvou RADEONů X1950 XTX. Impozantní výsledek. ![]() Oblivion Rozsáhlé venkovní prostory zaplněné vegetací, velmi vysoká náročnost na paměť, hromada textur ve vysokém rozlišení, detailní charaktery, simulace počasí, HDR barvy, stínování... ![]() 3D Mark 2006 Klasika mezi benchmarkovacími programy. Přehlídka moderních technologií v množství větším než malém. Pro GeForce 8800 žádný problém. ![]() Spotřeba Každá sranda něco stojí. Tento moderní čip si také vyžaduje hodně slušný přísun energie. Přesto, přepočítáno na počet tranzistorů a poskytovaný výkon, nejsou tato čísla nijak kritická. ![]() Hlučnost Ke komfortu patří klid. Lépe řečeno, ticho a klid. Jak vidíte, GF 8800 patří k těm méně hlučným kartám. ![]() Závěr Jak z výše popsaného vyplývá, GeForce 8800 je skutečně prvotřídní hardware. Paradoxně nebyl nikdy tolik hypovaný, jako jeho předchůdci. Přesto (nebo právě proto) představuje skutečný next-gen tak, jak by měl vypadat. GeForce 8800 GTS se dá oficiálně sehnat v ČR od 12 757,- Kč vč. DPH. GeForce 8800 GTX se dá koupit od 16 660,- Kč vč. DPH. Dostupnost je okamžitá, ale reálně má nyní většina obchodů na skladě jenom ASUS 8800 GTS (Asus EN8800GTS/HTDP/640M 640MB, PCI-E). Související články: Novinky... |
Cappy | |
autorovi je 27 let, momentálně pobývá v zahraničí a specializuje se na hardware, dříve se podílel na vývoji několika počítačových her |