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

Rozbor architektury Radeonu RX 480, GCN4

Radeon RX 480 je oficiálně venku. Dnes se podíváme, jakých změn doznalo 3D jádro, co bylo vylepšeno na výpočetních blocích nebo teselaci, i jak se na poslední chvíli změnily oficiální specifikace.

Když se AMD pustila do příprav Radeonu RX 480 s jádrem Polaris 10, nastavila si několik priorit, které měl produkt a architektura splňovat.

Radeon Rx 480 Launch 090

  • výkon přinejmenším takový, aby dostačoval minimálním požadavkům pro VR (~Radeon R9 290)
  • ~2× lepší poměr výkon na watt
  • tišší referenční chladič
  • mainstreamová cena

Tím bylo v podstatě dané, že Radeon RX 480 na trhu de facto nahradí Radeony R9 290 / 290X / 390 / 390X, byť by asi s ohledem na start vývoje bylo korektnější hovořit konkrétněji o Radeonu R9 290X. Ten ve své době nabízel (a doposud nabízí) velmi zajímavý výkon, který dostačuje řadě her. Zvlášť v režimu „Uber“, kdy se limit TDP zvýšil z 250 na 294 wattů, dokázal dorovnat nebo překonat tehdejší konkurenci: Titan. Neslo to ale s sebou dva zásadní problémy: Prvním byla hlučnost referenčního chladiče, který k odvodu ~300 wattů tepla zvyšoval otáčky a ke 3000 RPM, což bylo pro mnoho zájemců neakceptovatelné. Druhým nedostatkem byla samotná spotřeba, i když ve srovnání s generací Kepler ještě nešlo o takový problém, jako po vydání úspornějšího Maxwellu. GPU Hawaii vyžadovalo náhradu, čímž byla daná výkonnostní relace nového GPU a snížení spotřeby na polovinu už vyplynulo jako řešeí nejpalčivějšího problému.

Virtuální Realita

Ať už budeme na podporu virtuální reality nahlížet jako na příčinu nebo logický důsledek výkonu této karty, vzala ji AMD přes cenovou relaci, do které karta míří, poměrně vážně a není podporována pouze stylem: „výkonem na to stačí, můžeme na krabici namalovat logo VR a k němu zelenou fajfku“. Do setu technologií, které AMD označuje souhrnným názvem Liquid VR, přibylo několik novinek.

Radeon Rx 480 Launch 053Radeon Rx 480 Launch 054

Jednou z nich je pokročilejší podpora prostorového zvuku TrueAudio Next. Podporuje ray-tracing a konvoluci pro více zdrojů zvuku a funguje asynchronně, takže je zpracováváno v samostatné frontě. Vývojářům jsou k dispozici open-source knihovny s efekty.

Radeon Rx 480 Launch 056

Podpora pro asynchronní shadery byla rozšířena o pokročilejší formu řízení, kterou AMD nazývá Quick Response Queue. Díky ní je možné řídit prioritu a dočasně omezit dostupné hardwarové prostředky pro jednu z front, pokud je potřeba, aby jiná z front byla zpracována dříve, prioritně. Této technologie využívá tzv. Asynchronous Time Warp pro Oculus Rift. Výhoda spočívá v tom, že vhodnou úpravou priority lze předejít vypadávání snímků a tím docílit plynulejšího obrazu.

Radeon Rx 480 Launch 055

Kromě řízení priority nyní může vývojář rozdělit hardwarové prostředky čipu, aby část byla vždy plně dostupná pro konkrétní využití - ať už grafiku, výpočty nebo zvuk.

Radeon Rx 480 Launch 057Radeon Rx 480 Launch 058

Samotného obrazového výstupu se týká podpora pro rendering v rozlišení přizpůsobenému lidskému oku (vyšší rozlišení ve středu obrazu než u okrajů) a podpora pro sledování pohybu oka a automatickou kompenzaci rozlišení pro příslušnou zónu.

Architektura Polaris / GCN 4: Geometrie a teselace

Radeon Rx 480 Launch 088

Jednotlivé generace architektury GCN zvyšovaly geometrický nebo teselační výkon a to jak zvyšováním počtu geometrických procesorů, tak optimalizacemi architektury. Přesto se AMD od doby teselačního šílenství potýkala se situací, kdy polygony dosahují srovnatelných nebo menších rozměrů než samotné pixely. Z hlediska uživatele je úroveň teselace, při které vznikají polygony menší než pixel, nežádoucí. Polygony menší než pixel se totiž na výsledném obrazu neprojeví, protože spadnou pod rozlišení rastru, ale práce s nimi konzumuje výkon a tedy snižuje FPS. Logickým řešením by bylo použití vhodně koncipované adaptivní teselace, kdy je úroveň teselace regulována tak, aby při daném rozlišení nevznikaly „neviditelné“ polygony.

Radeon Rx 480 Launch 092

Praxe byla spíše opačná. Protože Nvidia disponovala hardwarem lépe zvládajícím zpracování těchto mikropolygonů, propagovala extrémní teselaci ve hrách i syntetických testech - zkrátka proto, že z těchto situací odcházela jako vítěz. Protože se vysoké úrovně teselace objevují v rámci proprietárních efektů GameWorks, které Nvidia distribuuje mezi herními vývojáři, rozhodla se AMD v rámci nové architektury namísto dalšího navyšování geometrického výkonu a optimalizací hardwaru doplnit nový prvek, který nazývá Primitive Discard Accelerator. Tento obvod dokáže detekovat polygony, které nebudou rasterizovány, případně vzorkovány při anti-aliasingu a odstraňovat je ještě v počáteční fázi zpracování.

Díky tomu není plýtváno výkonem na zpracování polygonů, které v obraze nebudou vidět. Při extrémních úrovních teselace a zapnutém anti-aliasingu může být celkový výkon i více než 3× vyšší než bez použití této technologie. Geometrické procesory dále doplnila index cache, která snižuje datové přenosy a uvolňuje datové cesty.

Architektura Polaris / GCN 4: Compute Units

Čtvrtá generace GCN přináší nejvýznamnější změny ve výpočetních jednotkách CU (Compute Unit). Doplňuje Instruction Prefetch (předběžné načítání instrukcí), aby nedocházelo k častějšímu zastavování běhu pipeline kvůli čekání na instrukce. Zvětšena byla také kapacita instrukčního bufferu, vyladěno využívání výpočetní L2 cache.

Radeon Rx 480 Launch 093

Dalšího rozvoje se dočkala podpora pro výpočty se sníženou přesností. Zatímco některá grafická jádra s GCN 3 podporovala výpočty s přesností FP16, GCN 4 podporuje FP16 / Int8 nativně u všech čipů postavených na této architektuře a přidává i podporu pro Int16. Teoretický výkon v FP16 a Int16 se sice neliší od teoretického výkonu v FP32 - klesají ale energetické nároky čipu a nároky na paměť. Popsané změny na úrovni výpočetních bloků zvyšují efektivitu reálného výkonu na CU až o 15 %.

Radeon Rx 480 Launch 094

Aby Radeon RX 480 s 2304 stream-procesory dosáhl výkonu GPU Hawaii s 2816 stream-procesory, musí dorovnat 22% deficit v papírovém výpočetním výkonu. Zhruba polovinu z tohoto deficitu dorovnává právě vyšší efektivita výpočetních bloků, druhou polovinu pak kompenzuje vyšší taktovací frekvence.

Architektura Polaris / GCN 4: paměťový řadič, sběrnice a ROP

Radeon R9 290X byl vybavený kombinací 64 ROP a 512bit paměťové sběrnice. Ve své době šlo o grafickou kartu zaměřenou na uživatele prvních 4k displejů, takže vysoký fillrate byl jedním z klíčových prvků návrhu. Radeon RX 480 cílí na trochu jinou skupinu uživatelů, čemuž odpovídá i odlišné vyvážení čipu.

Radeon Rx 480 Launch 096

GPU Polaris 10 je vybavené 256bit sběrnicí. Pro kompenzaci užší šířky pásma byla implementována pokročilá metoda delta-komprese, která umožňuje zvýšit objemy datových přenosů až o 40 %. Krom úspory šířky pásma je koncipována tak, aby zároveň snižovala energetické nároky přenosů. Dalších 60 % přináší nasazení 8Gb/s pamětí GDDR5 (oproti 5Gb/s Radeonu R9 290X), což v kombinaci s delta-kompresí více než dorovnává efektivní šířku pásma GPU Hawaii.

Zdvojnásobena byla kapacita L2 cache, což v kombinaci s delta-kompresí snižuje počet i objemy přístupů ke grafické paměti a snižuje energetické nároky paměťových přesunů až o 40 %.

Radeon Rx 480 Launch 097

Tím se vracíme k ROP jednotkám. Přestože se to často v diskusích děje, není možné přímo srovnávat počty ROP jednotek u různých architektur. Základní důvody jsou dva. První spočívá v architektonické odlišnosti ROP jednotek. To se týká především srovnání mezi výrobci. ROP AMD a ROP Nvidie nedosahují stejného výkonu ve všech podporovaných obrazových formátech (RT). Zatímco při použití Int8 je teoretický výkon obou totožný, FP16 podporuje Nvidia v poloviční rychlosti, AMD v plné. Pokud dojde na míchání (blending), je výkon při FP10 a  FP16 u Nvidie poloviční, u AMD plný. V FP32 je u Nvidie čtvrtinový, u AMD poloviční (opět oproti Int8).

Druhým důvodem je, že papírově totožně výkonné ROP se na odlišných architekturách chovají odlišně. Přestože ROP jednotky GPU Hawaii / Radeonu R9 290X zvládají při formátu FP16 pracovat v plném výkonu (stejně jako v Int8), v praxi nebylo takového výkonu možné dosáhnout, protože pro datové přesuny datová propustnost Radeonu R9 290X ani přes 512bit sběrnici nestačila. Radeon RX 480 oproti tomu umožňuje dosáhnout svého teoretického výkonu při formátu FP16 - jednak díky tomu, že disponuje vyšším datovou propustností na ROP a jednak díky tomu, že podporuje delta-kompresi, která snižuje objemy potřebných datových přesunů. Přestože Radeon RX 480 dosahuje jen 63 % teoretického fillrate Radeonu R9 290X, díky možnosti reálně dosahovat teoretických mezí, doplnění delta-komprese a dvojnásobné L2 cache fungují ROP efektivněji a tudíž bude fillrate reálně dosahovaný ve hrách výrazně vyšší, než oněch papírových třiašedesát procent Radeonu R9 290X.

Radeon RX 480 - specifikace

Parametry Radeonu RX 480 byly z větší části známé již před oficiálním vydání. Zastavíme se proto jen u parametrů, které vyžadují určitý komentář.

 Radeon
R9 270X
Radeon
R9 380
Radeon
RX 480
Radeon
R9 290X
GPUCuracao
2,8 mld. tr.
Antigua
5,0 mld. tr.
Polaris 10
5,7 mld. tr.
Hawaii
6,2 mld. tr.
Plocha jádra212 mm²359 mm²232 mm²438 mm²
Výrobní proces28nm28nm14nm28nm
ArchitekturaGCNGCN 3GCN 4GCN 2
Frekvence1050 MHz ≤970 MHz1120 MHz
1266 MHz
≤1000 MHz
SPs1280179223042816
TMUs80112144176
ROPs32323264
Výkon2,69 TFLOPS 3,48 TFLOPS5,2 TFLOPS
5,8 TFLOPS
5,6 TFLOPS
Výkon DP
(64bit FP)
0,17 TFLOPS≤0,22 TLOPS 0,36 TFLOPS0,70 TFLOPS
Paměti2-4 GB
256bit GDDR5
2-4 GB
256bit GDDR5
4-8 GB
256bit GDDR5
4 GB
512bit GDDR5
Frekvence pamětí5,7 GHz5,7 GHz7,0-8,0 GHz5,0 GHz
Dat. propustnost182 GB/s182 GB/s224-256 GB/s320 GB/s
TDP / TBP180 W110 W150 W250 / 294 W
Napájení6+6-pin6-pin6-pin6+8-pin
Výstupy2× DVI
HDMI, DP

2× DVI
HDMI, DP

HDMI 2.0b
3× DP 1.4
2× DVI
HDMI, DP
TrueAudio 
XDMA CF 
FreeSync 
RozhraníPCIe 3.0 ×16 PCIe 3.0 ×16PCIe 3.0 ×16PCIe 3.0 ×16
APIDirectX 11.2
OpenGL 4.3
Mantle
DirectX 11.2

DirectX 12
Vulkan

DirectX 11.2
DirectX 12
Vulkan
DirectX 11.2
DirectX 12
Mantle
Vydání13. 11. 2013 18. 6. 201529. 6. 201624. 10. 2013
Cena$199 $199 2GB$199 4GB
$229 8GB 7GHz
$239 8GB 8GHz
$549

Základní taktovací frekvence je nastavena na 1120 MHz, boost na 1266 MHz. Takt, na kterém karta běží, těsně souvisí s TDP. Limit je nastaven na 150 wattů, ale řízení taktů není koncipované jako u předešlé generace, tzn. aby karta permanentně běžela na nejvyšší možné frekvenci, dokud není dosaženo TDP limitu. AMD tentokrát nezvolila přístup „až nadoraz“, což znamená, že reálná spotřeba nebude ve všech aplikacích dosahovat plných 150 wattů a stejně tak, že reálný takt nebude stále držen na 1266MHz maximu.

Layout jádra Polaris 10 (render)
(upozornění: obrázek v plném rozlišení má přes 3 MB)

Důležitá informace se týče pamětí. Přestože AMD původně hovořila o 8GHz (8Gb/s) GDDR5, nakonec zvolnila a dala výrobcům na výběr, zda zvolí 7GHz nebo 8GHz paměti. Obojí odpovídá finálním specifikacím. Většina karet sice ponese rychlejší 8GHz čipy, ale při výběru karty bude třeba kontrolovat, zda koukáte na 7GHz (~224 GB/s) nebo 8GHz (~256 GB/s) model. Nakolik to ovlivní výkon a která varianta nabídne lepší poměr cena/výkon zatím není jasné, to bude vyžadovat rozsáhlejší srovnávací testy. Proč k této změně došlo, AMD nespecifikovala. Můžeme ale předpokládat, že objemy výroby 8GHz GDDR5 zatím nejsou dostačující pro použití na všech Radeonech RX 480 a AMD dala přednost určité roztříštěnosti specifikací před omezenou dostupností.

Zítra se podíváme na novinky v multimediální výbavě.

Diskuse ke článku Rozbor architektury Radeonu RX 480, GCN4

Úterý, 5 Červenec 2016 - 13:59 | Trovaricon | osobna otazka: vsak si ty nepresiel ani OGL NeHe...
Pátek, 1 Červenec 2016 - 09:33 | Karáš Svorka | Právě proto mi přijde lepší R9 390, která má více...
Pátek, 1 Červenec 2016 - 08:41 | PPK | Jasne normalni lidi dvi zajima. To ale neni...
Pátek, 1 Červenec 2016 - 04:10 | tombomino | Musime pockat, az vyhde Vega :) Jinak jeste k te...
Pátek, 1 Červenec 2016 - 04:03 | tombomino | 970ka je dobra az do chvile, kdy musi sahat do...
Čtvrtek, 30 Červen 2016 - 22:55 | Maťko911 | http://www.hardwarecanucks.com 14hier - DX11+12...
Čtvrtek, 30 Červen 2016 - 18:57 | Gath G | Jestli "geometry shader" mění...
Čtvrtek, 30 Červen 2016 - 18:39 | Karáš Svorka | Super, takže propad výkonu je feature, paráda. To...
Čtvrtek, 30 Červen 2016 - 18:33 | Gath G | Nevšiml jsem si, že by se konkurence chytala...
Čtvrtek, 30 Červen 2016 - 17:25 | Sob | Vykopavka nevykopavka, stale to ma hromada...

Zobrazit diskusi