Successivo

GPU

AMD Radeon RX Vega

Michele Braga | 14 Novembre 2017

AMD Gpu Grafica Vga

Un’architettura aggiornata e memorie HBM2 per sfidare Nvidia nel settore delle schede grafiche per i videogiocatori evoluti.

Lo scorso 15 agosto AMD ha lanciato sul mercato la nuova famiglia di schede grafiche Radeon RX Vega con l’obiettivo di offrire ai giocatori soluzioni di fascia media e alta. Il modello di punta Vega 64 è commercializzato in due differenti versioni: con raffreddamento ad aria oppure a liquido; quest’ultimo allestimento offre frequenze operative superiori a quello base grazie proprio alla soluzione raffreddamento più performante. Il secondo modello è Vega 56, disponibile solo con raffreddamento ad aria e posizionato in una fascia di prezzo inferiore. In realtà prima delle versioni consumer è stata lanciata la versione Frontier Edition, simile al modello Vega 64 e con un quantitativo di memoria maggiore, indirizzata ai professionisti.
Le Radeon RX Vega rappresentano l’aggiornamento più importante degli ultimi cinque anni per l’offerta Radeon e prosegue lo sviluppo dell’architettura Fiji impiegata per la produzione delle Radeon R9 Fury e R9 Nano. AMD posiziona il modello Vega 56 – oggetto di questa prova – come soluzione ideale per giocare a risoluzioni di 1.920 x 1.080 e 2.560 x 1.440 pixel con la possibilità di arrivare a 3.840 x 2.160 pixel; per quanto riguarda le prestazioni la Radeon RX Vega 56 si posiziona, invece, tra le GeForce GTX 1070 e GTX 1080 di Nvidia.

Vega 10 è la scheda AMD che attesa da tempo e in grado di fornire prestazioni di primo livello.

Il modello Vega 56 di riferimento ha lo stesso aspetto e la stessa costruzione del modello Vega 64 raffreddato ad aria ed è equipaggiato con 8 Gbyte di memoria HBM2 operante a 800 MHz. La Gpu – approfondita nel dettaglio nella sezione relativa all’architettura – dispone di 3.584 shader processor che sul modello di riferimento operano alla frequenza base di 1.156 MHz con la possibilità di raggiungere 1.471 MHz in modalità Boost. Sulla staffa posteriore sono presenti quattro uscite video: tre Displayport in standard 1.4 pronte per l’HDR (High Dynamic Range) e una Hdmi in standard 2.0b. Manca in questo caso l’uscita Dvi che però sarà disponibile su alcuni modelli commercializzati dai partner AMD. Sulla scheda sono presenti anche degli switch: due servono per gestire i led luminosi posti vicino ai connettori di alimentazione PEG, mentre il terzo serve per selezionare l’avvio con il Bios principale o con quello secondario.

Motore grafico: questa Gpu prodotta con tecnologia a 14 nanometri offre un massimo di 4.096 shader processor. Memoria: le Radeon RX Vega 64 e 56 dispongono di 8 Gbyte di memoria HBM2.

Architettura

La base delle schede grafiche Radeon RX Vega è la Gpu Vega 10 che eredita gran parte delle sue caratteristiche da quella Fiji di generazione precedente e impiegata per la produzione delle schede grafiche Radeon R9 Fury e Nano. La nuova Gpu è realizzata con la tecnologia FinFET a 14 nanometri LPP di GlobalFoundries e racchiude 12,5 miliardi di transistor in una superficie di 486 millimetri quadrati (110 millimetri quadrati in meno rispetto alla Gpu Fiji che era prodotta a 28 nanometri). La maggior parte dei transistor aggiunti rispetto a Fiji serve per permettere a Vega 10 di operare a una frequenza superiore rispetto alla precedente generazione (1,7 GHz contro 1,05 GHz), mentre altri sono stati aggiunti nei diversi stadi delle pipeline per ottimizzare i meccanismi per nascondere i tempi di latenza durante l’elaborazione.

A livello macroscopico l’architettura di Vega 10 è molto simile a quelle della precedente generazione Fiji che ha introdotto per la prima volta l’utilizzo delle memorie HBM. Con Vega 10 è stata incrementata la cache L2 ed è stato introdotto l’Infinity Fabric, oltre a migliorie a livello del motore grafico.

A livello macroscopico la Gpu Vega 10 è organizzata in modo pressoché identico a Fiji: l’architettura completa – disponibile sulle Radeon RX Vega 64 – utilizza 64 compute unit (CU) organizzate in 4 compute engine (CE) o shader engine secondo la nomenclatura impiegata per descrivere le precedenti architetture. Ciascun blocco compute engine è collegato a un motore geometrico, a un motore di rasterizzazione e alle unità Rop in grado di lavorare un totale di 16 pixel per ogni ciclo di clock (quattro Rop in grado di elaborare 4 pixel per clock). Rispetto al passato i A monte dell’architettura sono presenti un command processor, quattro unità Ace (Asynchronous Compute Engine) e due scheduler hardware.

Ogni NCU contiente al suo interno uno scheduler, una porzione di memoria, un motore di branch, 64 stream processor per il calcolo vettoriale, una unità di calcolo scalare, quattro unità di texture, una cache di primo livello e i registri dedicati alle unità di calcolo.

Con Vega debuttano le NCU (next generation compute unit) in grado di eseguire 512 ops a 8 bit per clock, 256 ops a 16 bit per clock oppure 128 ops a 32 bit per clock. Ciascuna compute unit comprende al suo interno uno scheduler programmabile e condiviso che gestisce 4 unità vettoriali Simd (single instruction multiple data) – per un totale di 64 stream processor – e un’unità di calcolo scalare; ogni unità Simd dispone di un registro vettoriale dedicato da 64 Kbyte, mentre l’unità di calcolo scalare dispone di un registro da 4 Kbyte. All’interno di ogni modulo NCU sono presenti 64 Kbyte di memoria per lo scambio dati (Local Data Share) e una cache di primo livello (L1) da 16 Kbyte. La struttura del modulo NCU comprende inoltre 4 unità di texture, ognuna delle quali è affiancata da 4 unità per il fetch delle texture. Come abbiamo anticipato, i moduli NCU sono organizzati in blocchi logici denominati Compute Engine, ciascuno dei quali è collegato a un motore geometrico dedicato, a un’unità di rasterizzazione e 4 unità Rop in grado di lavorare 4 pixel per ogni ciclo di clock.

CARATTERISTICHE
ModelloRadeon RX Vega 64 LCERadeon RX Vega 64Radeon RX Vega 56Radeon RX 580
GpuVega 10Vega 10Vega 10Polaris 10
Dimensione die (mm2)486486486232
Numero di transistor (miliardi)12.512.512.55.7
Tecnologia produttiva (nm)14 FinFET LPP14 FinFET LPP14 FinFET LPP14 FinFET LPP
Frequenza base / boost (MHz)1.406 / 1.6671.247 / 1.5461.156 / 1.4711.257 / 1.340
Generazione Gcn5554
Moduli Gcn64645636
Stream Processor4,0964,0963,5842,304
Unità di texture256256224144
Unità Rop64646432
Frequenza memoria (MHz)9459458002,000
Ampiezza del bus di memoria (bit)2,0482,0482,048256
Tipo di memoriaHBM2HBM2HBM2GDDR5
Quantit? di memoria (Gbyte)8884 / 8
Banda di memoria (Gbyte/s)483.8483.8409.6256.0
TDP (watt)345295210185
Elaborazione mezza precisione (GFlops)23.036 / 27.47620.431 / 25.33016.572 / 21.088n.a.
Elaborazione singola precisione (GFlops)11.518 / 13.73810.215 / 12.6658.286 / 10.5445.792 / 6.175
Elaborazione doppia precisione (GFlops)720 / 859638 / 792518 / 659n.d.
Supporto Microsoft DirectX12121212
Supporto OpenGL4.54.54.54.5
Supporto OpenCL2.02.02.02.0

Le Gpu Vega 10 impiegate per le schede grafiche Radeon RX Vega 64 comprendono 64 NCU per un totale di 4.096 shader processor, 256 unità di texture e 16 unità Rop (64 pixel per clock); le schede Radeon RX Vega 56 utilizzano invece una Gpu Vega 10 con solo 56 moduli NCU attivi, per un totale di 3.584 shader processor, 224 unità di texture e 16 unità Rop (64 pixel per clock). L’architettura si appoggia a una cache di secondo livello (L2) da 4 Mbyte – contro i 2 Mbyte presenti in Fiji – alla quale sono agganciate le cache di primo livello (L1) e le Rop; l’incremento della cache è stato deciso per supportare meglio le Rop e migliorare le prestazioni con la tecnica del deferred shading (shading differito).

DEFERRED SHADING

L’utilizzo del termine “differito” all’interno della tecnologia di “shading differito” è utilizzato in quanto nel primo passaggio di analisi ed elaborazione dei vertici e dei pixel non viene eseguita alcuna operazione di shading. Questo tipo di operazione, invece, viene rimandata al secondo passaggio, ovvero al momento in cui i pixel raggiungono le unità Rop alla fine della pipeline grafica.

I cambiamenti di maggior rilievo introdotti con Vega 10 sono quelli relativi al passaggio dalla tecnologia di memoria HBM a quella HBM2, al dimezzamento dei controller di memoria – da 4 a 2 – e all’utilizzo della tecnologia Infinity Fabric come struttura di collegamento tra i diversi blocchi funzionali della Gpu. La riduzione dei controller di memoria ha permesso di risparmiare spazio sul die in silicio e di ridurre in modo sensibile il numero delle linee di comunicazione da implementare nell’interposer per collegare la Gpu alla memoria. Vega 10 è collegato a due stack di memoria HBM2 attraverso altrettanti bus con ampiezza di 1.024 bit gestiti da controller a 64 bit per un bus con un’ampiezza complessiva pari a 2.048 bit; la Gpu Fiji utilizzava invece quattro stack di memoria HBM collegati da altrettanti bus a 1.024 bit. Il sistema di gestione della memoria è denominato HBCC (high bandwidth cache controller) e, stando a quanto dichiarato da AMD, in grado di indirizzare uno spazio virtuale di 512 Tbyte; questo perché l’HBCC è in grado di appoggiarsi anche alla memoria di sistema nel caso in cui la memoria locale non sia sufficiente a contenere i dati richiesti dall’applicazione. L’utente può abilitare la mappatura nella memoria di sistema attraverso un pannello dedicato all’interno dei driver Radeon Software Crimson ReLive: se ad esempio avete 32 Gbyte di memoria di sistema potete dedicare 8 Gbyte come buffer aggiuntivo per la scheda grafica. Questa caratteristica offre agli sviluppatori la possibilità di implementare in applicazione come i giochi di prossima generazione l’utilizzo di texture in altissima risoluzione che però non troverebbero spazio all’interno della memoria locale della scheda grafica. In termini di prestazioni, alcuni giochi attuali offrono qualche punto percentuale di prestazioni in più utilizzando questa opzione dell’HBCC, mentre in molti altri casi non si rilevano cambiamenti. Il bus Infinity Fabric di Vega 10 opera a una frequenza indipendente a differenza di quello utilizzato nei processori con architettura Ryzen; in quest’ultimo caso la frequenza dell’Infinity Fabric è legata a quella della memoria e ciò permette di ottenere un consistente incremento di prestazioni in situazioni di overclock. Il passaggio dalla tecnologia HBM di prima generazione a quella HBM2 ha permesso di incrementare il quantitativo di memoria locale: le schede Radeon RX Vega 64 e Vega 56 sono disponibili con 8 Gbyte di memoria contro il massimo di 4 Gbyte previsto sulle Radeon R9 Fury e R9 Nano.

Il resto dei blocchi funzionali presenti in Vega 10 sono un aggiornamento di quelli già presenti in Fiji, ma senza cambiamenti sostanziali. Troviamo così il modulo dedicato alla gestione dei contenuti multimediali con il motore di accelerazione per la decodifica e codifica video, il controller per i display e il motore XDMA che serve nella gestione della memoria in configurazioni multi Gpu di tipo Crossfire. Con i pixel in formato a 32 bit le schede con Gpu Vega 10 supportano fino a un massimo sei monitor con risoluzione 4K a 60 Hz o due a 120 Hz. Salendo di risoluzione sono supportati fino a tre monitor 5K a 60 Hz, oppure tre display 8K a 30 Hz oppure uno a 60 Hz. In standard Hdr con pixel a 64 bit sono supportati, invece, fino a tre monitor 4K a 60 Hz, oppure un display 4K a 120 Hz o un 5K a 60 Hz. Poiché sulle schede sono presenti solo quattro uscite video, per alcune configurazioni è richiesta l’aggiunta di un hub per le connessioni video.

Le schede AMD Radeon RX Vega sono dotate di quattro uscite video: tre Displayport e una Hdmi.

I prodotti basati sulla Gpu Vega 10 sono, almeno per il momento, quelli che offrono il supporto più completo alle librerie Microsoft DirectX 12 e in quest’ottica sono già pronti per supportare al meglio anche i giochi di prossima generazione. Vega 10 è compatibile con il livello 12.1 delle funzioni DirectX e con i Tier di massimo livello per le altre funzioni previste (Resource Binding, Tiler Resources, Reasource Heap e Conservative Rasterization); rispetto all’architettura Pascal di Nvidia supporta inoltre le funzioni Pixel Shader Stencil Reference, Standard Swizzle e High Perf Concurrent Async Compute + Graphics.

La prova

La Gpu Vega 10 è un prodotto molto importante per AMD in quanto è utilizzata non solo alla produzione delle schede grafiche Radeon RX Vega per il settore consumer, ma anche per realizzare soluzioni professionali e enterprise. AMD ha scelto una strategia molto diversa da quella della rivale Nvidia che per ogni segmento di mercato ha una Gpu tagliata su misura. Questo approccio ha richiesto di bilanciare le caratteristiche tecniche di Vega 10 in modo che siano adatte a tutti i settori, senza permettere un’ottimizzazione specifica in grado di fornire prestazioni superiori a quelle fornite dalla concorrenza. AMD è riuscita comunque ha ottenere un’ottimo rapporto tra prestazioni e prezzo in modo analogo a quanto fatto nel settore delle Cpu con i modelli Ryzen e Ryzen Threadripper. Da qui a qualche mese potrebbe arrivare Vega 11 (se ne parla già dall’inizio dell’anno) che dovrebbe essere una versione ridotta di Vega 10, ma della quale non si conoscono ancora dettagli. Con così poche informazioni è difficile immaginare come l’offerta Radeon di AMD possa essere rimodulato per comprendere prodotti basati su Vega 10, Vega 11 e Polaris 10.
Nel frattempo la Radeon RX Vega 56 ha confermato di essere un prodotto molto interessante per chi desidera un sistema da gioco capace di spingere risoluzioni di 1.920 x 1.080 e 2.560 x 1.440 pixel pur non avendo a disposizione un budget elevato.

PRESTAZIONI
Radeon RX Vega 56Radeon RX 580
Futuremark 3DMark (patch 2.1.2973)
Time Spy (DirectX 12)66204857
Fire Strike Ultra46763217
Fire Strike Extreme87836122
Fire Strike1685511654
Unigine Superposition Benchmark (1.0)
1080P Exteme34002556
1080P High84046018
1080P Medium121528552
Ashes of the Singularity (DirectX 12 / impostazioni Extreme)
No AA / MSAA4X
1.920 x 1.08069,5 / 68,750,8 / 49,6
2.560 x 1.44058,5 / 56,143,1 / 42,5
Tessmark 0.3.0
Set 3 / Set 4
Tessellation level 1685.150 / 80.13272.612 / 67.670
Tessellation level 3252.857 / 45.63042.910 / 37.721
Tessellation level 6421.766 / 19.53118.070 / 17.246
LuxMark 3.1 - Gpu
Neumann TLM-102 SE154909997
Hotel lobby45893002
Configurazione - Processore: AMD Ryzen Threadripper 1800X; Scheda madre / chipset: Asus Zenith Extreme / AMD X399; Memoria: 4 da 8 Gbyte G.Skill Ddr4; Disco: Samsung 960 Pro SSD / 512 Gbyte; Sistema operativo: Microsoft Windows 10 Professional Creators Update; Driver: AMD Radeon Software Crymson 17.8.2

Per la prova della Radeon RX Vega 56 abbiamo utilizzato la piattaforma AMD equipaggiata con un Ryzen Threadripper 1800X. Il sistema è stato configurato con 32 Gbyte di memoria, un disco Ssd Samsung 960 Pro e con il sistema operativo Microsoft Windows 10 Creators Update (build 1703). Nelle primi giorni dopo il lancio delle Radeon RX Vega sono state introdotte versioni specifiche dei driver, distinte da quelle dedicate alle schede Radeon RX della serie 500 basate su Gpu con architettura Polaris. Nei test la Radeon Vega 56 ha fatto segnare risultati ben superiori a quelli dei prodotti Radeon RX 580 e che si inseriscono tra quelli tipici delle schede GeForce GTX 1070 e GeForce GTX 1080. Non abbiamo ancora avuto la possibilità di provare una Radeon RX Vega 64 per misurare la differenza di velocità tra i due modelli dotati di un diverso numero di shader processor e per questo motivo nella tabella dei risultati non troverete un confronto interno all’offerta Vega di AMD.

PRO Buon rapporto tra prezzo e prestazioni / Ideale per giocare alla risoluzione di 2.560 x 1.440 pixel / Supporto Vulkan

CONTRO Il prezzo potrebbe essere ritoccabile verso il basso