Diit.cz - Novinky a informace o hardware, software a internetu

Nová architektura GPU od AMD dostává konkrétnější rozměr

GPU APU ATI AMD
Fusion Developer Summit 2011 skončil minulý týden a jako třešnička na dortu posloužila přednáška Erica Demerse, ve které šéfinženýr grafické divize AMD odhalil něco víc o architektuře nadcházejících grafických čipů. Mimo technologických detailů také prozradil,  kdy se na trh dostane první produkt. Pojďme se tedy na dostupné informace podívat ještě jednou a trochu podrobněji…

Kapitoly článků

1.  Úvod, koncept a konfigurace

Dosud platí, že nebyl ohlášen jediný konkrétní produkt, čip, grafická karta, dokonce ani žádný název. Jde tedy stále jen o prezentaci architektury, která bude použitá pro nadcházející generaci grafických karet a výhledově i pro APU Fusion. Pracovně se zatím o nové architektuře mluví jako o GCN, případně méně přesně jako o FSA.

V souvislosti se základními informacemi přibyly dvě nové zprávy: První produkt vycházející z GCN by měl být vydán ve čtvrtém kvartálu letošního roku (Q4/2011). Trochu abstraktněji vyznívá informace, že ne všechny vlastnosti, které byly popsané v prezentaci, budou přítomné hned v prvním produktu. Všechny se ale dočkají implementace v horizontu 2-3 let. Nemůžeme mluvit za AMD, ale pravděpodobně je tím myšlena implementace ve Fusion. Není totiž možné očekávat, aby AMD např. implementovala nové unifikované jádro, ale ponechala staré řízení čipu a podobně (vzhledem k rozsahu změn jsou samozřejmě nekompatibilní).

Konfigurace

S novou architekturou a odlišně konfigurovanými výpočetními bloky přicházejí i nové názvy. AMD zatím termín stream-procesor neuvedla, zůstává u prostého označení ALU, které je v případě nové architektury přesnější. Výpočetní jednotky jsou uspořádané po šestnácti v bloku značeném jako SIMD. U architektury dosavadních čipů mají SIMDs trochu jinou podobu a nejsou přímo srovnatelné s novými.

FDS 2011, Eric Demers, strana 17

Přibližně na úrovni původního SIMD bloku je nyní blok nazvaný CU, který je složen ze 4 SIMDs. Pro snazší představu poslouží malé srovnání:

Cayman GCN
stream procesor (SP) ALU
ALU (4D / 5D) SIMD (16 ALUs)
SIMD (16 ALUs) CU (4 SIMDs)

Pokud zabrousíme ke spekulacím, je možné z určitých hodnot, které Demers zmiňoval, a pravidel, na nichž nová architektury zakládá, odhadnout podobu konkrétního čipu. Jako jedna z pravděpodobných možností vychází čip složený z 32 CUs. Protože se CU skládá ze 4 SIMDs a SIMD se skládá ze 16 ALUs, vychází nám to 32×4×16 = 2048 ALUs na čip. Samozřejmě je třeba brát v potaz, že Demers mohl uvést cíleně zavádějící příklad - známe konkurenční boj a staré praktiky - nicméně popsaná konfigurace není mimo realitu.

Koncept

GCN zakládá na trochu nezvyklém konceptu dvou typů výpočetních jednotek. Hrubý aritmetický výkon budou zastávat zmíněné ALUs uspořádané v blocích po šestnácti (SIMDs). Tyto bloky můžeme označovat také jako vektorové výpočetní jednotky. Při zmínce vektorových jednotek by se sice mohla objevit vzpomínka na staré DX9 čipy. Ty také využívaly vektorové výpočetní jednotky, ale z valné části jde pouze o název, princip jejich fungování je zcela jiný - důvody se pokusím postupně vysvětlit. Protože už čip nevyužívá architektury VLIW a tedy statického plánovaní, které bylo realizované přes CPU, mohlo si AMD dovolit poměrně razantní změny. Plánuje se ve skupinách po 64 (pixelech, hodnotách atp.), do kterých čip sám rozdělí hodnoty podle instrukcí, které na nich budou provedené. Takto „vektorizované“ skupiny dat přiřadí jednotlivým SIMD blokům.

FDS 2011, Eric Demers, strana 16

Hlavní výhodou je odbourání komplikací, které na stávajících architekturách působily závislosti. Pokud na výsledku jednoho výpočtu (který nedokázal efektivně obsadit instrukční sloty) závisel další výpočet, nebyly SPs efektivně využity, dokud se závislé výpočty nezrealizovaly. GCN má tu výhodu, že jednotlivé SIMDs mohou pracovat nezávisle a pokud jedna provádí výpočet, na jehož výsledku bude záviset spuštění jiného výpočtu, mohou ostatní SIMDs dostat jinou úlohu a nic je neblokuje.

Druhou skupinou výpočetních jednotek jsou samostatné skalární jednotky. V každém CU je přítomna jedna (tzn. jedna na 64 ALUs) a jejím úkolem je postarat se o jednoduché skalární výpočty, aby zbytečně neblokovaly SIMDs a ty se mohly věnovat velkoobjemovým výpočtům. Skalární jednotka by měla obstarat hlavně adresaci, větvení kódu a podobné pomocné funkce.

Tento koncept odpovídá superpočítačům Cray z konce minulého století a nedá se říct, že by šlo o pouhou náhodu - Demers přiznal, že inspirace skutečně pocházela odtud.

Tagy: 
Zdroje: 

AMD FDS

Kapitoly článků
1.  Úvod, koncept a konfigurace

Diskuse ke článku Nová architektura GPU od AMD dostává konkrétnější rozměr

Středa, 22 Červen 2011 - 12:45 | no-X | Díky, ale já už přestávám věřit, že se to snaží...
Středa, 22 Červen 2011 - 09:37 | ASD_SK | Preco si ten odstavec co si uviedol na zaciatku...
Úterý, 21 Červen 2011 - 23:27 | terrorist | nepletu. u fermi je to prave jinak. to co tvrdis...
Úterý, 21 Červen 2011 - 15:22 | kyo kyo | Essential on our road to the Holodeck. To mi...
Úterý, 21 Červen 2011 - 14:55 | mikeczcom | taktéž to tak vidím. nebo si počkám na bulldozer...
Úterý, 21 Červen 2011 - 12:36 | webwalker | Asi ještě není známo jakého typu ta skalární...
Úterý, 21 Červen 2011 - 11:48 | no-X | Mohl bys napsat, o co ti jde? :-) Není mi jasné,...
Úterý, 21 Červen 2011 - 11:25 | terrorist | "bude se vykrucovat .. "
Úterý, 21 Červen 2011 - 11:18 | no-X | Tak ještě jednou :-) Fermi sdílí L1 DATA cache s...
Úterý, 21 Červen 2011 - 10:55 | terrorist | to, ze to vyzniva nejednoznacne, je ciste tvuj...

Zobrazit diskusi