Tom's Hardware Italia
Schede Grafiche

Recensione AMD Radeon RX 480 8GB: Polaris 10 alla prova

Pagina 1: Recensione AMD Radeon RX 480 8GB: Polaris 10 alla prova
Abbiamo provato la versione da 8 GB della Radeon RX 480, la nuova scheda video di AMD basata su GPU Polaris 10. Ecco i test delle prestazioni, i consumi, le temperature e la rumorosità.

Ecco Polaris 10

Sei mesi fa AMD ha iniziato ad anticipare ciò che avrebbero offerto le GPU di nuova generazione, iniziando da un controller display rinnovato per supportare HDMI 2.0b e DisplayPort 1.3 HBR3, FreeSync su HDMI e una pipeline HDR. Da allora sono emerse altre informazioni che indicavano l'esistenza di due GPU create deliberatamente per reclamare quote di mercato nel mercato mainstream desktop e offrire una soluzione mobile con prestazioni di classe console per portatili ultrasottili.

polaris gpu

Quest'ultimo progetto (Polaris 11) offre 16 Compute Unit, un bus a 128 bit e l'accelerazione della codifica/decodifica 4K. È in divenire. La Radeon RX 480 che trattiamo in questo articolo è basata sul progetto Polaris 10, più complesso. Non è una GPU che può vedersela con il GP100 di Nvidia da 15,3 miliardi di transistor, ma è sufficientemente elaborata da poter gestire gli attuali visori di fascia alta per la realtà virtuale, al pari della R9 290 e della GTX 970.

Annunciando l'arrivo della Radeon RX 480 AMD ha puntato molto sul rapporto tra prezzo e prestazioni. L'azienda vuole offrire un prodotto che consenta di giocare in realtà virtuale a un prezzo più accessibile. In commercio ci aspettiamo due modelli della RX 480: uno con 4 GB di memoria GDDR5 a 7 Gb/s e uno con 8 GB di memoria GDDR5 a 8 Gb/s. In questo articolo mettiamo alla prova la soluzione migliore, quella da 8 GB.

All'interno della nuova GPU

Polaris 10 è composta da 5,7 miliardi di transistor su un die da 230 mm². La GPU Hawaii integra 6,2 miliardi di transistor su un die di 438mm². Come vedrete nelle pagine dedicate ai test la RX 480 solitamente si posiziona tra la R9 290 e la R9 390, con meno transistor e circa il 55% dei consumi. Parte di questo miglioramento si può attribuire al processo a 14 nanometri FinFET di GlobalFoundries che AMD accredita per i fondamentali benefici sul fronte delle prestazioni e dei consumi rispetto al processo planare a 28 nanometri.

A qualsiasi livello di consumo i FinFET possono lavorare a frequenze superiori. Stabilita la frequenza, un transistor a 14 nm consuma meno energia. Per Polaris 10 AMD ha scelto di seguire tutte e due le strade, aumentando la frequenza e tagliando i consumi. Questo le consente di offrire prestazioni maggiori di GPU più complesse con un TDP di 150 watt – anche se le nostre rilevazioni mostrano che la RX 480 mente un po' su quel numero.

Nonostante il nome in codice Polaris 10 è basata sull'implementazione della quarta generazione dell'architettura Graphics Core Next. Per questo i molti appassionati che hanno già familiarità con GCN riconosceranno i blocchi fondanti del progetto di Polaris.

GPU Radeon RX 480 (Polaris 10) Radeon R9 390 (Grenada Pro) Radeon R9 290 (Hawaii Pro)
Compute Unit 36 40 40
Stream Processors 2304 2560 2560
Freq. base 1120MHz 1000MHz <947MHz
Freq. boost 1266MHz N/A N/A
GFLOPs (Base Clock) 5161 5120 4849
Unità Texture 144 160 160
Texel Fill Rate 182.3 GT/s 160.0 GT/s 152 GT/s
Bus 256-bit 512-bit 512-bit
Freq. memoria 8 GB: 8 Gb/s
4 GB: 7 Gb/s
6 Gb/s 5 Gb/s
Bandwidth 256 GB/s 384 GB/s 320 GB/s
ROPs 32 64 64
Cache L2 2MB 1MB 1MB
TDP 150W 275W 250W
Transistor 5,7 miliardi 6,2 miliardi 6,2 miliardi
Dimensione die 230mm² 438mm² 438mm²
Processo produttivo 14nm 28nm 28nm

Un solo Graphics Command Processor è ancora il responsabile per la gestione delle code grafiche verso gli Shader Engines. Allo stesso modo gli Asynchronous Compute Engines sono deputati alla gestione delle code di calcolo. La differenza è che l'architettura ora consiste di quattro ACE anziché otto, con due unità Hardware Scheduler per gestire la priorità delle code, la gestione delle risorse temporal/spatial e l'offloading delle operazioni di driver scheduling CPU kernel. Questi non sono blocchi separati o nuovi di per sé, ma piuttosto una modalità opzionale sfruttabile dalle pipeline esistenti. Dave Nalasco, senior technology manager per la grafica di AMD, aiuta a chiarire il loro scopo:

"HWS (Hardware Workgroup/Wavefront Schedulers) sono essenzialmente pipeline ACE che sono state configurate con controller dispatch. Il loro lavoro è scaricare la CPU dal gestire lo scheduling delle code utente/driver sugli slot per la coda disponibili in hardware. Si tratta di processori con microcode programmabile che possono implementare una varietà di policy di scheduling. Le abbiamo usate per implementare caratteristiche Quick Response Queue e CU Reservation in Polaris, e siamo stati in grado di portare questi cambiamenti nei prodotti GCN di terza generazione con aggiornamenti driver".

Quick Response Queues permette agli sviluppatori di dare priorità a determinate operazioni che lavorano in modo asincrono senza anticipare altri processi interamente. Nel caso non abbiate letto il post di Dave su questa caratteristica potete dargli un'occhiata. La flessibilità è l'obiettivo di AMD. La sua architettura permette più approcci per migliorare l'uso e minimizzare la latenza, entrambe importati per la realtà virtuale e non solo.

pastedImage 5
Clicca per ingrandire

Le Compute Unit che conosciamo così bene consistono di 64 shader IEEE 754-2008-compliant suddivisi tra quattro unità vettoriali, un'unità scalare e 16 unità texture fetch load/store. Ogni CU offre anche quattro unità texture, 16KB di cache L1, 64KB di dati locali condivisi, uno spazio di registro per unità scalari e vettoriali. AMD dice che ha fatto diverse modifiche per migliorare l'efficienza dei CU, inclusa l'aggiunta del supporto nativo FP16 (e Int16), un accesso alla cache ottimizzato e un migliore prefetching delle istruzioni. Tutti insieme questi cambiamenti dovrebbero aumentare fino al 15% le prestazioni per CU rispetto alla GPU Hawaii della R9 290, che è basata sulla seconda generazione dell'architettura GCN.

polaris cu
Clicca per ingrandire

Nove CU sono organizzati in uno Shader Engine e Polaris 10 ne ha quattro di questi SE, coerentemente con ciò che sappiamo essere il massimo dell'architettura. Facendo i conti (64 shader x 9 CU x 4 SE) abbiamo 2304 stream processor e 144 unità texture.

polaris 10
Clicca per ingrandire

Ogni Shader Engine è associato a un Geometry Engine, che secondo AMD è migliorato grazie all'aggiunta di un primitive discard accelerator per non avviare qualsiasi primitiva che non rasterizza verso un pixel, prima di eseguire la scan conversion, aumentando quindi il throughput. È una funzione automatica dello stadio di pre-rasterizzazione della pipeline grafica, ed è interamente nuova in Polaris. C'è anche un index cache per instanced geometry, anche se non siamo certi di quanto grande sia o significativo l'impatto quando viene usato l'instancing.

Quanto è realistico il numero di 1266 MHz? Hawaii aveva grandi problemi nel mantenere la frequenza scelta di AMD, diventando caldo, e vogliamo assicurarci che lo stesso comportamento non si verifichi con Polaris. Usando il test integrato Metro: Last Light Redux in loop 10 volte, abbiamo registrato le frequenze usando GPU-Z e abbiamo ottenuto il seguente grafico:

clock rate over time

Ci sono esattamente 148 MHz tra i punti più bassi e alti in questo grafico. Il livello inferiore è 1118 MHz e il tetto è 1265 MHz. Diremmo che AMD indica le proprie specifiche base e boost quasi esattamente, anche se ciò che succede nel mezzo è soggetto a costante regolazione. Almeno la media di 1208 MHz è più vicina al livello massimo che a quello minimo.

Similmente ad Hawaii, successivamente divenuta Grenada, Polaris 10 è capace di gestire fino a quattro primitive per ciclo di clock. Laddove le GPU Hawaii/Grenada più veloci lavoravano fino a 1050 MHz (nel caso della R9 390X), AMD spinge la Radeon RX 480 a 1266MHz, compensando frequenze più alte le risorse perse sul die. Mentre la R9 290X offriva 5,6 TFLOPs di potenza in virgola mobile, la RX 480 raggiunge 5,8 TFLOPs.

Laddove gli Shader Engine di Hawaii e Fiji hanno quattro render back-end, capaci di 16 pixel per clock (o 64 lungo GPU), Polaris 10 taglia quel numero della metà. Due render back-end per SE, ognuno con quattro ROPs, per un totale di 32 pixel per clock. Questa è una riduzione rilevante rispetto alla R9 290 che AMD deve superare con la RX 480. Per finire, Polaris 10 ha un bus di memoria a 256 bit – molto inferiore ai 512 bit di Hawaii. La versione da 4 GB della RX 480 include memoria GDDR5 a 7 Gb/s, per un bandwidth di 224 GB/s, mentre il modello da 8 GB che testiamo in questo articolo ha memoria GDDR5 a 8 Gb/s, per un throughput di 256 GB/s – molto meno dei 320 GB/s della R9 290.

480

Parte del deficit è compensato da una compressione delta color migliorata che riduce la quantità d'informazione trasferita sul bus. AMD ora supporta rapporti lossless 2/4/8:1, similmente all'architettura Nvidia Pascal. Polaris 10 beneficia anche della più capiente cache L2 da 2 MB vista in precedenza su Fiji. Questo può aiutare nel passaggio dei dati alla memoria, riducendo ulteriormente la dipendenza della GPU da un ampio bus e dai data rate elevati.

La semplificazione del back end deve però avere un impatto sulle prestazioni all'aumentare di risoluzione e uso di anti-aliasing. Curiosi di come Polaris 10 si posiziona rispetto ad Hawaii all'intensificazione del carico, abbiamo avviato Grand Theft Auto V a 1920×1080 con dettagli Very High e poi abbiamo iniziato ad aumentare l'anti-aliasing.

gta aa scaling

Come potete vedere la Radeon RX 480 vede scendere il proprio frame rate medio molto più velocemente della R9 390 con il passare dell'MSAA da "Off" a 2x e poi 4x. Con AA disabilitato la RX 480 ha raggiunto 97,3 FPS e la 390 è arrivato a 90,4 FPS. Alla fine la RX 480 è a 57,5 FPS mentre la 390 si ferma a 62,9 FPS.

Asus AMD Radeon RX 480 Asus AMD Radeon RX 480
  

Sapphire AMD Radeon RX 480 Sapphire AMD Radeon RX 480
  

MSI AMD Radeon RX 480 MSI AMD Radeon RX 480
ePRICE

Sapphire AMD Radeon RX 480 Sapphire AMD Radeon RX 480
ePRICE

Sapphire AMD Radeon RX 480 Sapphire AMD Radeon RX 480
monclick