Když loni koncem roku NVIDIA představila jako další ze své řady čipů GeForce 2 Ultra, což nebylo nic jiného než stejný čip pracující na vyšší frekvenci, bylo to spíše zklamání. Veřejnost jistě očekávala, že představí něco zbrusu nového, opět uteče konkurenci o krok dopředu a potvrdí roli leadra. Jediná konkurence v podobě ATI představila velice solidní a technologicky vyspělý čip Radeon, který slušně zamíchal prodejností. GeForce 3 se dostává na trh až nyní. Důvody zpoždění jsou poměrně logické. Jednak se čekalo, až bude dostupná v potřebné kapacitě nižší mikronová technologie výroby čipů (konkrétně 0.15 mikronů), dále bylo třeba vyčkat na vydání DirectX 8.0, který obsahuje podporu nových funkcí a také bylo třeba konečně připravit odpovídající ovladače.
Nové jádro NV20
Celý koncept nového čipu je viditelně hnán sympatickou snahou se zbavit některých neduhů, které se táhly doposud výrobkovou řadou GeForce 2. Nový čip je tedy vyráběn opět nižší - 15ti mikronovou technologií, což je potěšující zpráva vzhledem k masivnímu počtu osazených tranzistorů. Tento se od předchozího jádra GeForce 2 zhruba zdvojnásobil a konkrétně jde o nepředstavitelných 57 miliónů. Celá tahle mašinérie se vejde do pouzdra, které není o mnoho větší než GeForce 2 GTS a má přibližně stejnou spotřebu energie a tím i podobně topí (původní GeForce měla zhruba čtyřnásobný odběr). Proč je tranzistorů o tolik více bude jasné hned poté, co si podrobněji zmapujeme technologické novinky tohoto grafického procesoru. Je jasné, že bez přechodu na tuto nižší technologii by se takto složitý čip nedokázal uspokojivě uchladit a tudíž byl nový výrobní proces nutností. Podívejme se na technologickou tabulku:
|
Počet renderovacích cest zůstává na čtyřech, přičemž každá má 2 texturovací jednotky (TMU). Takt čipu zůstává na 200 Mhz. Díky úpravě v architektuře dokáže ovšem aplikovat až 4 textury za hodinový cyklus oproti dvěma u GeForce2 GTS. Již u předchozí generace čipů byla jednoznačně a logicky kritizována paměťová propustnost. Schopnosti čipu a jeho výpočetní výkon byl bržděn relativně nižší propustností pamětí a tak část efektivního výkonu padla i při použití rychlých dvouportových pamětí typu DDR Bylo tomu tak hlavně proto, že výrobci nedokázali dodat v potřebném množství čipy s rychlejší přístupovou dobou. Naštěstí se již kvalita vyráběných pamětí zlepšila natolik, že karty s GeForce 3 (a také GeForce 2 Ultry) se osazují pamětmi DDR s přístupovou dobou 3,8 nS a taktovaných na 230Mhz (což je potřeba chápat jako takt 460Mhz).A to je oproti 333 Mhz standardnímu taktování u GeForce 2 vítaný krok správným směrem k vyvážení celého akcelerátoru. Standardně se osazuje rovnou 64Mb paměti, ovšem dá se logicky předpokládat pozdější pomalejší varianta “MX“ pravděpodobně s polovinou paměti a drobnou výkonovou úpravou. To samotné by nebylo zas tak moc, paměťový systém doznal mnohem podstatnější úpravy, zvané...
LightSpeed memory architecture
Paměťový řadič leží na cestě mezi lokální pamětí na kartě a vlastním výpočetním jádrem (GPU) čipu. Čip si řekne o novou porci dat ke zpracování a ty jsou s jeho pomocí předány ke zpracování. Až doposud probíhal přesun dat po 128 bitů široké paměťové sběrnici a to v celé šířce. Stalo-li se tedy, že se přesunoval menší objem nevyužívající celých 128 bitů, zbytek paměťové sběrnice ležel v tu chvíli zbytečně nevyužit. Dostáváme se k řešení, které je logické a zřejmé a jmenuje se právě LightSpeed memory architecture. Prostě se 128 bitů široká sběrnice rozdělí na 4 části, které jsou schopné pracovat samostatně a každá bude mít svůj 32 bitů široký řadič. Tudíž pokud přesouváme méně než 128 bitů, např. pouhých 32, přesun zabere přesně tolik a zbylá kapacita je v tuto chvíli okamžitě volná pro další data. Efektivita je tedy vyšší, ovšem logicky hlavně v případě těchto menších datových objemů. Nelze od toho čekat zázraky, ale je jasné, že jakýkoliv krok směrem ke zrychlení paměťového subsystému je velice vítaný. Paměti byly hlavně v minulosti celkem oprávněně terčem kritiky a NVIDIA se viditelně snaží v této oblasti něco vymyslet. Hrubá výpočetní síla čipu totiž dost značně začínala předbíhat možnosti osazovaných pamětí.
FSAA
Jenom připomenu, že antialiasing slouží k odstranění “zubatých okrajů“ na hranách polygonů, tvořících scénu. Jde o režim full-scene, tedy probíhá pro celý obrázek naráz. GeForce 2 používá dost výpočetně náročnou metodu, která spočívá v předpočítání obrázku ve dvoj, eventuálně dokonce čtyřnásobném rozlišení a následné zmenšení na potřebnou velikost. (výsledná barva bodu je tak dána průměrem okolních 2x2 bodů). Pokud se podíváte do našich starších článků, uvidíte tam i s výsledky, že tato metoda je pro vyšší rozlišení nepoužitelná. NVIDIA proto přišla s několika úpravami. První spočívá ve zrychlení zmíněné metody tím, že se neprovádí “naslepo”, ale opravdu jen tam, kde je potřeba - tedy na hranicích trojúhelníků tvořících objekty na scéně. Rozpoznání těchto hran je možné díky novinkám v architektuře čipu, ale nechci zabíhat moc do detailů. Metoda je stejná jako dříve, ale vzhledem ke zmíněnému přístupu je podstatně rychlejší.
Druhý nový algoritmus s šíleným patentovaným názvem „Quincunx“ pracuje s vzorkem více bodů v okolí vyhlazované hrany. Vysvětlení principu by zabralo dost místa a každého spíš zajímá, jak to po předchozích zkušenostech běhá rychle při zapnutém vyhlazování. Někde okolo najdete doufám ilustrační obrázek jednotlivých módů (použita byla hra StuntGP v režimu Direct3D).
Pixel a Vertex Shadery
Něco podobného bylo již v GeForce 2 pod názvem NSR - NVIDIA Shading Rasterizer a šlo o integrovanou součást T&L jednotky. Vývojáři kritizovali malou flexibilitu a vhodnost NSR k tvorbě složitějších efektů a NVIDIA na jejich připomínky reagovala. V čipu obsažená texturovací jednotka (TMU) je nyní poměrně flexibilně programovatelná a právě tento obslužný program se nazývá „Pixel Shader“. Stejně tak je volně programovatelná i část jádra zajišťující geometrické transformace, zde jde analogicky o „Vertex Shader“. Šikovně naprogramovaný Vertex Shader tak může dost podstatně ulehčit procesoru, protože ten právě tyto transformace doposud z velké části prováděl. Podpora těchto shaderů je ovšem integrovaná právě až v DirectX 8.0, tudíž starší tituly nemohou jejich výhod využít. Je zřejmé, že nestačí, aby titul využívat DirectX 8, ale je také potřeba, aby aktivně používal programovatelné shadery ke tvorbě použitých efektů. Stejně je to i pod rozhraním OpenGL - shadery jsou zde dostupné, ovšem je musí začít někdo používat. V současné době lze shadery v akci vidět zatím v např. některých testech nového 3D Marku 2001.
Další novinky
K dalším novinkám patří plná podpora BumpMappingu, který slouží k vytváření realistických povrchů objektů. Povrch je pak jakoby plastický a vypadá věrohodně. Geforce 3 podporuje 2 režimy Bump Mappingu - EMBM a DotProduct3. První zmíněný byl ve své době hlavní marketingovou devizou karet G400 od Matroxu. Další inovací je podpora komprese Z-bufferu. Pokud chceme zjistit orientaci bodu v prostoru, pracujeme jednak s klasickými souřadnicemi X a Y a jednak se souřadnicí Z, která určuje “hloubku“ bodu ve scéně. Z-buffer je tedy určitá oblast paměti, kde se ukládají právě tyto hodnoty hloubek všech bodů ve scéně. Trik je v tom, že při vykreslování nového bodu se stejnými X a Y souřadnicemi je nejprve porovnána uložená hodnota hloubky ze Z-bufferu porovnána s hloubkou nového bodu a bod je vykreslen pouze,
pokud leží před již existujícím. Tímto se elegantně vyřeší viditelnost objektů. Nové jsou zde dvě věci. Jednak je možné Z-buffer komprimovat a tak přesouvat menší množství dat a šetřit paměť. Druhá zajímavější věc s tím související se nazývá HSR - Hidden Surface Removal - tedy odstraňování neviditelných povrchů. Jde o to netexturovat zbytečně povrchy, které ve výsledku budou stejně zakryty nějakým bližším objektem a nebudou vidět. Metoda pracuje se speciálně upraveným Z-bufferem, se kterým se porovnávají souřadnice polygonu a zjišťuje se jeho viditelnost na scéně. Takto se dá podstatně zredukovat počet operací se Z-bufferem tím, že porovnávání probíhá pro větší objekty a ne pro každý bod zvlášť jako tomu bylo doposud. Konkrétní zrychlení, které toto přináší, závisí převážně na konkrétní renderované scéně, ve specifickém případě může být dokonce stejně rychlé jako původní řešení.
Karta
Karta, kterou jsme testovali, je od firmy Gigabyte a nese označení GA-GF33000DF. Je třeba nejprve říci, že jde tzv. předprodukční vzorek. Je tedy možné, že finální prodejní verze čipu se bude nepatrně odlišovat. O razantních rozdílech bych ovšem velice pochyboval. Karta byla jako taková dodána bez jakékoliv dodatečné výbavy - pouze karta a CD s ovladači. BIOS karty taktéž hlásá “Engineering Release - Not For Production Use” a jenom dokumentuje, že nejde o prodejní verzi karty. Ale zpět k hardwaru. Čip je na kartě chlazen aktivně větráčkem evidentně dost na úkor použitého pasivního chlazení. Vlastní hliníkový chladič je dost malý a nepůsobí moc solidně. Nicméně vzhledem ke zmíněnému nízkému tepelnému vyzařování čipu a použité technologii to není moc na závadu. Čip je taktován na frekvenci 200Mhz. Na kartě je osazeno je 64MB paměti v 8-mi čipech EliteMT a přístupovou dobou 3,8nS, pochopitelně jde o paměti typu DDR. Dále je na kartě osazen čip Silicon Image 164CT64 obsluhující video signál a jeho výstup přes DVI konektor osazený na kartě. Kromě DVI výstupu je už na kartě jen běžný výstup na klasický monitor.
Systém
Grafická karta GigaByte GeForce 3 GA-GF33000DF byla testována na této sestavě:
K omezením Intel BX čipsetu bohužel patří i to, že neumožňuje provoz sběrnice v režimu AGP 4x, tedy 1066 MB/sec, ale maximálně AGP 2x - tj. 533Mb/sec. Orientačně jsem proměřil některé opravdu náročné scény na objemy přesouvaných dat (1600x1200x32 bitů v Quake, 3DMark 2001 - Nature) se stejným procesorem v desce Abit SAE6R postavené na čipsetu Intel i815E, kde tento režim je podporován a můžu s klidem prohlásit, že zatím opravdu není podstatný rozdíl ve výkonu mezi těmito přenosovými režimy (naopak díky nižší paměťové propustnosti i815E byly výsledky o něco slabší). Proto nevidím problém v testování na BX čipsetu. Vysvětlení lze hledat v tom, že jednak má karta 64MB lokální paměti a jednak v tom, že se důsledně využívá komprese textur, která sníží objemy přenášených dat často velice podstatně. Komprese textur je podporována v Direct3D i OpenGL a to dokonce několika různými algoritmy. Pokud si vezmeme jako příklad texturově nejnáročnější test z nového 3Dmarku 2001 - Nature, zjistíme že používá v průměru 33,5 MB a maximálně 40 MB textur. Ostatní testy mají méně - test Game 25,0 MB, Dragothic - 17,4 MB a Lobby dokonce pouze 10,9 MB (vše jsou maximální hodnoty při HIGH detailech). Nové tituly budou také pochopitelně s kompresí textur pracovat a tak to vypadá, že AGP 2x se svými 533MB/sec je dostačující i pro blízkou budoucnost. Ještě jedna rada pro majitele desek s VIA čipsety (KT133/A). Pokud máte problémy se stabilitou v hrách apod., zkuste přepnout AGP na 2x. místo 4x. Výkon bude v podstatě stejný a stabilita se obvykle zlepší. Druhou věcí je to, že použitý Celeron 2, i takto přetaktovaný, kartu nestíhá živit daty. Představuje ale určitě výkonovou třídu, kde už o GeForce 3 má smysl uvažovat (hlavně kvůli FSAA výkonu, ale to až za chvíli).
Test 1: OpenGL
Testy byly prováděné s vypnutým FSAA. Pro porovnání se podívejme na výsledky karty Asus V7700 Deluxe s čipem Geforce 2 GTS a osazenou také 64MB paměti. GTS2 Ultra (která je bezprostředním výkonovým předchůdcem) jsem bohužel k dispozici neměl.
Výsledky GigaByte GeForce 3 GA-GF33000DF 64 MB v OpenGL | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
Pozn.: test byl proveden v Quake3 Arena: Demo 001, OpenGL, multitexturing, VSync OFF, Sound OFF |
Jakmile se používá 32 bitová barevná hloubka, jde GeForce3 prudce a nekompromisně dopředu. Je třeba pochopit, že Q3A nevyužívá programovatelných shaderů v čipu a pravděpodobně by bylo docela těžké takto ji přizpůsobit. Zrychlení je proto hlavně dané větším počtem textur za hodinový cyklus a úpravami paměťového řadiče. Nicméně v 16-ti bitových módech není oproti starší GeForci 2 žádný podstatný rozdíl, snad kromě nejvyššího rozlišení. Zdá se, že bude ještě potřeba zapracovat na ovladačích. Druhá věc je, že je pochopitelně nesmysl hrát Q3A v 16ti bitovém módu, hlavně pak na takovéto kartě, kde 1600x1200 v HQ dává velice zajímavých 73,3 snímků za vteřinu.
Test 2: Direct 3D - 3D Mark 2000
Použijeme nejdříve starší verzi tohoto benchmarku, abychom zjistili, jak to bude s rychlostí, pokud půjde o titul kompatibilní s DirectX 7.0 a starší. Což je v podstatě asi tak všechno, co budete v současné době hrát. Opět porovnejme s Asusem V7700 64MB.
Výsledky GigaByte GeForce 3 64 MB v Direct3D - 3D Mark 2000 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pozn.: test byl proveden v 3D Mark 2000 (Direct3D multitexturing, VSync OFF, Sound OFF ) |
V podstatě se zde kopíruje trend zjištěný v předchozím testu. Rozdíl v 16-ti bitových módech je sice patrný, ale rozhodně ne nijak závratný a rozhodně ne omlouvající přibližně dvojnásobnou cenu GeForce3. Fillrate je z důvodů výše uvedených technologických úprav v podstatě stejná v 16-ti i 32 bitových módech a to i vysvětluje tak solidní výsledky při 32 bitovém provozu.
Test 3: Direct 3D - 3D Mark 2001
Nová verze 2001 3D Marku je již plně optimalizovaná pro DirectX 8, podporuje Pixel a Vertex Shadery a vůbec je dost jasně zaměřena na to, aby ukázala možnosti nové GeForce 3. Některé testy proto bohužel bez této karty vůbec neuvidíte - jde hlavně o test Game 4 -Nature, který používá Pixel i Vertex Shadery a vyžaduje DirectX 8 kompatibilní hardware (hlavně musí podporovat shadery), ale i o testy BumpMappingu - EMBM a DOT3 (viz výše) a konečně testy s jasným označením Pixel a Vertex shader. Uvádím proto jen ty, které na slušnější kartě uvidíte a tak budete moci porovnat výsledky se současnou grafickou jedničkou.
Výsledky GigaByte GeForce 3 64 MB v Direct3D - 3D Mark 2001 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Pozn.: test byl proveden v 3D Mark 2001 |
Porovnával jsem výsledky s různými systémy v databázi na stránkách výrobce benchmarku firmy MadOnion a jsou plně srovnatelné se systémy podporující zmíněný přenos 4x AGP. Pokud chcete srovnávat, použijte standardní test, který jede v 1024x768x32 bitů (default benchmark). Jen pro zajímavost některé výsledky z jiných systémů:
-
1) CPU P3 1Ghz@1110, GTS 2 Ultra, AGP 4x - 3675 3D Marks
2) Thunderbird 800@935, GTS 2 Pro, AGP 4x - 3270 3D Marks
3) Duron 700@952, GeForce 3, AGP 4x - 5047 3D Marks
Další si určitě najdete sami. Pokud si vezmeme poslední výsledek přetaktovaného Duronu (externí takt 136Mhz), který je o dost výkonnější než zde použitý Celeron, vidíme, že náš výsledek (4464) je zcela v normě. Hodně lidí často kombinuje “přehnaně“ rychlý procesor s neodpovídajícím akcelerátorem a výsledky nejsou odpovídající investici. Ale to už je jiná kapitola.
Test 4: FSAA
Podívejme se na rychlost jednotlivých módů antialiasingu, jak jsme si je popsali výše.
Výsledky GigaByte GeForce 3 64 MB ve FSAA | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
Pozn.: test byl proveden v Quake3 Arena: Demo 001, OpenGL, multitexturing, VSync OFF, Sound OFF R_EXT_COMPRESS_TEXTURES 1 - zapnutá komprese textur |
Tohle je opravdu výrazné zlepšení a nelze než gratulovat. Pokud se podíváte na naše testy GeForce 2 GTS z dřívějška dělané v podstatě na srovnatelné konfiguraci, tak se dalo použít max. FSAA 2x a ještě spíše max. v rozlišení 800x600. Tady díky technologických úpravám a odstranění některých úzkých hrdel při designu čipu je FSAA konečně bez problémů použitelné. Nový algoritmus Quincunx je opravdu kvalitně navržený. Vizuálně je téměř srovnatelný s čtyřnásobným FSAA klasickou metodou, ale jak vidíme z testů je podstatně svižnější. Lze použít rozlišení 1280 na 1024 ve 32 bitech, což při použití Quincuxu vypadá opravdu skvostně. I nižší rozlišení (1024), pokud přece jen chceme vyšší výkon, je vizuálně opravdu perfektní. V Direct3D je rychlost srovnatelná a taktéž lze bez problémů hrát se zapnutým FSAA. Výborně, takhle nějak to mělo vypadat dřív.
Hodnocení
Plusy:
Mínusy:
Recenzovanou grafickou kartu GigaByte GeForce 3 GA-GF33000DF 64 MB nám za účelem testování laskavě zapůjčila firma AT Computers, Ostrava.