AMD Radeon HD 6800: novinky v architektuře
1.11.2010, Petr Štefek, technologie
Zbrusu nové Radeony HD 6800 jsme si již otestovali a nyní přichází řada na článek o tom, co se změnilo s dalším evolučním krokem v architektuře DirectX 11 grafických jader společnosti AMD. Novinek je opravdu dost, tak si je pojďme popsat.
Kapitoly článku:
- AMD Radeon HD 6800: novinky v architektuře
- Display Port 1.2 - co vše pro nás vyřeší?
- HDMI 1.4a, akcelerace videa a 3D filmy
Barts a jeho evoluce
Současné dny patří jednoznačně uvedení nových grafických karet společnosti AMD, jež disponují rovněž zbrusu novým jádrem Barts, které je členem nové rodiny grafických jader Northern Island. Přes poněkud zavádějící označení Radeon HD 6800 se nejedná ani u samotných grafických karet a ani u jader o nástupce Radeonů HD 5800 a jádra Cypress. Nějakou dobu do příchodu silnějších Radeonů HD 6900 s jádrem Cayman bude Cypress a Barts na trhu koexistovat.
Pokud bychom se podívali zpět, snadno najdeme zprávy o tom, že nová jádra Barts budou vyráběna u TSMC 32nm procesem. Nakonec vše skončilo úplně jinak a nová jádra využívají starého ale osvědčeného výrobního procesu na 40 nm. Od pokročilejšího výrobního procesu bylo upuštěno a hned si také povíme proč.
Radeon HD 6850
Pokud se podíváme na ekonomickou stránku věci, pak byl starší 40nm výrobní proces zvolen velmi výhodně, neboť náklady rozpočtené na jeden tranzistor, potažmo čip, jsou u 32nm procesu mnohem vyšší než u staršího na 40 nm. Zároveň se AMD nechtělo dostat do podobné situace, jaká byla koncem minulého roku, kdy 40nm proces výrazně snižoval výtěžnost čipů i u mnohem méně komplexního Cypressu (Nvidia byla problémy s 40nm procesem u GF100 postižena výrazně více). Díky tomu pak mohlo AMD získat se svou sérií Radeon HD 5800 výrazný prodejní a časový náskok oproti konkurenční Nvidii. 32nm proces nebyl na straně TSMC ve fázi testovaní bez výrobních problémů, a tak se společnosti využívající služeb TSMC rozhodly ohledně 40 nm počkat a následně přikročit k podstatně pokročilejšímu 28nm výrobnímu procesu.
32nm proces dostal červenou už na konci minulého roku a AMD muselo své nově připravované čipy Barts upravit, jelikož byly původně plánovány na předčasně ukončenou 32nm výrobu. Není známo, jak se Barts na 40 nm liší od původního návrhu pro 32 nm, ale je pravděpodobné, že se vše odrazilo na nižším počtu výpočetních jednotek, pracovní frekvenci a také absenci double precision funkcionalitě, na kterou jsme u grafických jader AMD byli zvyklí. Na přepracování čipu a uvedení na trh mělo AMD pouze několik měsíců a příchod Radeonů HD 6800 byl načasován opravdu velmi dobře (tedy něco málo po GeForce GTX 460).
Jádro Barts tak můžeme označit za evoluční mírně slabší verzi jádra Cypress, které při nižším počtu tranzistorů potažmo výpočetních jednotek dosahuje na stejné frekvenci vyššího výkonu (AMD proklamuje až 30% navýšení oproti staršímu čipu a ve světle dosažených výsledků bychom tomu mohli opravdu věřit). Barts je do značné míry v hierarchii produktového portfolia na tom podobně jako ve své době Juniper (Radeon HD 5700), který v současné době má namířeno do nejnižšího mainstreamu.
Schéma jádra Barts (40nm)
Jaký je Barts jako grafické jádro? Nové jádro kopíruje do značné míry trend nastavený již před několika lety první VLIW architekturou s pěti výpočetními jednotkami na jeden procesor. V marketingovém podání počítáme tedy skutečný počet stream procesorů krát pět, vypadá to lépe a nelžeme. 4 jednotky z pěti zvládnou každá FP32 MAD operací za takt a speciální pátá výpočetní jednotka může rovněž provádět FP32 operace nebo, na rozdíl od ostatních, provádět speciální funkce (např. transcendentální). Celkově Barts tedy zvládá 4x 32-bit FP (desetinné) MAD nebo 4x 24-bit Int (celočíselné) MUL/ADD za takt plus 1x 32-bit FP MAD operace za takt.
Pozornému čtenáři jistě neuniklo, že se někam vytratily FP64 operace, což ovšem není chyba ale vlastnost nového jádra Barts. AMD rozhodlo, že v rámci skutečností jako zabrždění u 40nm výrobního procesu přehodnotí přítomnost 64bitových operací s plovoucí desetinnou čárkou. To má samozřejmě docela podstatný vliv na velikost čipu, který musí být dostatečně levný. Pro normálního uživatele to neznamená nic podstatného, protože tyto vlastnosti hrají vliv ve světě GPU výpočtů, které se prozatím nějak zásadně neprosadily. Jistým způsobem to je opravdu krok zpět, ale pro nadšence těšící se na každou novou aplikaci podporující GPU Computing jsou zde stále Radeony HD 5800 a nově přibudou i Radeony HD 5900. Tento fakt ovšem nijak nefavorizuje konkurenční Nvidii.
Stream procesor jádra Barts (224 SP v celém čipu)
Když se podíváme na základní stavební jednotky jádra Barts, zjistíme, že se příliš mnoho nezměnilo a struktura SIMD zůstává stejná jako u staršího čipu Cypress. Skládá se tedy z 80 Stream Procesorů (VLIW – 5x16), kde každý se skládá z 5 samostatných výpočetních jednotek (x,y,z,w + t). Pokud půjdeme dále, tak rovněž zjistíme, že velikost L1 cache se nezměnila a je zde přítomna o kapacitě 16 kB pro textury a 8 kB pro výpočty. Dále zůstává stejný i počet (4) texturovacích jednotek na SIMD.
Pokud půjdeme o úroveň výše, zůstává nám zde stejný počet 32 renderovacích jednotek (ROP), ale díky vyššímu taktu zde dostane Barts mírný náskok oproti staršímu Cypressu. L2 cache je zde o velikosti 512 kB a je rozdělena do 4 částí po 128 kB. Přítomnost 4 64bitových paměťových řadičů značí využití 256bitové paměťové sběrnice, která je kombinována s GDDR5 paměťmi. Změny potud nejsou veskrze žádné kromě výše uvedené absence FP64 operací.
Kdyby AMD uvedlo na trh jen mírně osekaný Cypress, tak bychom se samozřejmě o čip samotný nijak zvlášť nezajímali. Jistě si vzpomenete, jak se Nvidia po uvedení čipu GF100 holedbala brutálním výkonem Polymorph Enginu při využití teselace. AMD na tom nebylo v syntetických benchmarcích nijak zvlášť dobře a nyní se optimalizací svých geometrických jednotek snaží rozdíl dohánět. Společnost proklamuje, že se v určitých momentech můžeme dočkat až dvojnásobného výkonu oproti čipu Cypress. Abychom si dovedli představit přínos zvýšeného výkonu teselace, tak pro nás AMD vytvořilo ilustrační graf, kde je patrné, při jaké úrovni teselace se optimalizace čipu Barts projeví.
Barts se soustředí na zvýšení výkonu v oblast nižších levelů teselace, což je jinými slovy úroveň, na kolik podčástí se daný polygon rozdělí. V grafu vidíme, že nástup výkonu je přesvědčivý od zhruba 4. po 13. faktor a se vzrůstající úrovní rapidně klesá. V praxi to znamená, že čím vyšší je faktor teselace, tím vyšší je detailnost objektů.
Pokud se podíváme na současné hry, které teselaci podporují, tak lehce dojdeme vzhledem k téměř nulovým rozdílům ve výkonu k tomu, že vývojáři implementovali opravdu nízký faktor teselace a vše má spíše marketingový význam. Masivní nasazení komplexní teselace by totiž zvládlo pouze velmi malé procento grafických karet na trhu (v podstatě pouze GeForce GTX 480/470 a také za cenu velkých propadů výkonu). Teselace a její úroveň v budoucích hrách je do značné míry závislá na dostupném výkonu u většiny hardware a také podporu této technologie v segmentu herních konzolí. Osobně předpovídám její masivní prosazení až okolo roku 2012 s příchodem nové generace herních konzolí.
Barts v plné specifikaci (Radeon HD 6870) dokáže v teselaci porazit i mnohem dražší Radeon HD 5870, který využívá výrazně větší jádro Cypress. Celkově je výkon jádra Barts vs. Cypress zhruba na úrovni 6-7% v neprospěch nově příchozího, což není vůbec špatný výsledek vzhledem k tomu, pro jaký segment je jádro vlastně určeno. Můžeme považovat s odstupem času Cypress za ne zrovna ideálně navržený čip?
Cypress měl celkově velkou část své plochy obětovanou pro shadery, texturovací jednotky na úkor geometrických a rasterizačních výpočetních jednotek. AMD není vůči výsledkům v reálných aplikacích hluché, a tak změnilo u svých dalších grafických jader mírně poměry jednotlivých jednotek tak. aby výkon na tranzistor byl maximálně efektivní. Díky tomuto evolučnímu kroku dosáhlo AMD na podobný výkon s méně tranzistory a nižší cenou samotného čipu. Prosté, ale účinné řešení bylo na světě.
Radeon HD 6870 má při přepočtení poměru jednotek zhruba 3/4 texturovacího/shaderového výkonu staršího a dražšího jádra Cypress. Naopak díky svým vysokým taktům má více výkonu v oblasti rasterizace a teselace než starší čip. Barts připomíná svým návrhem spíše starší GPU orientované na výkon v oblasti rasterizace s přídavkem teselačního výkonu. Pokud se podíváte na výkonnostní srovnání z minulého týdne, dojdete k závěru, že AMD udělalo rozhodně krok správným směrem, byť plně nekopíruje současné trendy. Celkové výkony levnějšího Barts jsou zhruba na úrovni Cypressu i ve vyšších rozlišeních a při využití vyhlazování.
AMD se podle nezaručených zpráv rozhodovalo při konečné specifikaci jádra Barts mezi dvěma hlavními návrhy, kde první měl strukturu zahrnující 1280 stream procesorů a pouze 16 ROPs a druhý měl naopak 1120 stream procesorů a 32 ROPs. Výkonnostně vycházel lépe druhý návrh čipu a byl také snadněji produkovatelný v návaznosti na předchozí návrh Cypressu. Rozdíly mezi poměry jednotlivých výpočetních jednotek by ale v praxi neměly znamenat žádné problémy.
Další úspora plochy jádra se týká paměťového řadiče, který je oproti řadiči použitému u čipu Cypress téměř poloviční. Občas se některý z odborníků zmíní o problematice provozování paměťových čipů GDDR5 na vysokých frekvencích. Provozování GDDR5 skrývá mnohá úskalí, a to nejen při snaze o úsporný režim, kde vyžadují stále dost vysoké napětí i na nízkých frekvencích, tak i u snahy o dosažení velmi vysokých frekvencích okolo 5 GHz. Radeony HD 5870 mají své GDDR5 taktovány na 4.8 GHz a dvojnásobně velký řadič. Novým Radeonům HD 6800 stačí poloviční řadič na dosažení 4.2 GHz. Kde je přesně zakopaný pes zatím nevíme, ale pokud to zjistíme, budeme vše komentovat. Je to totiž jedna ze stěžejních problematik při návrhu čipu, o kterých se mnoho nemluví a moc toho o nich ani nevíme. Podívejme se na GF100, která nedokáže GDDR5 obsluhovat na vyšším taktu než nějakých 3600 MHz a vše řeší raději širší sběrnicí a složitějším plošným spojem.
Barts je tedy dostatečně silný a jeho architektura je dostatečně efektivní, aby se dokázal postavit tak skvělému GPU, jakým je bezesporu konkurenční GF104 tikající v povedených GeForce GTX 460. Zdánlivě je AMD navenek opravdu ve formě, pokud se týče nabídky grafických karet a vůbec jejich poměru ceny ku výkonu, ale faktem zůstává, že divize grafických karet nijak zvlášť zisková není. Proto je velmi důležité, aby mělo AMD pro každý segment to pravé GPU a nepostupovalo způsobem tvorby pomalejších čipů oklešťováním a vypínáním výpočetních jednotek GPU určených pro high-endový cenový segment. Barts to pro AMD řeší v cenové kategorii od 4 do 6 tisíc.