Radeon Instinct, AMD accelera l'intelligenza artificiale

Radeon Instinct MI6, MI8 e MI25 sono i tre nuovi acceleratori di AMD dedicati all'ambito del deep learning in forte ascesa. A bordo di MI25 una GPU Vega 10 non ancora annunciata.

Avatar di Igor Wallossek

a cura di Igor Wallossek

Siamo reduci da una due giorni a Sonoma, California, in cui il CEO di AMD Lisa Su, il CTO Mark Papermaster e il boss del Radeon Technologies Group Raja Koduri ci hanno raccontato i piani futuri dell'azienda.

Si è parlato di diversi temi nel corso di questo Technology Summit - sì, anche Vega 10 e Zen - ma ne discuteremo nei prossimi giorni e nelle settimane a venire.

7 radeon instinct

Clicca per ingrandire

Per prima cosa l'azienda ha annunciato un trio di schede acceleratrici pensate per ridurre il tempo di allenamento e inferenza del deep learning, insieme a una libreria open source creata per sfruttare tali capacità. Nvidia ha aggredito il mercato dell'intelligenza artificiale con le proprie GPU, quindi AMD non ha tempo da perdere.

1 radeon instinct initiative

Clicca per ingrandire

Radeon Instinct

Tutte e tre le schede video appartengono a una nuova famiglia chiamata Radeon Instinct. Il modello entry level, chiamato Radeon Instinct MI6, è basato su una GPU Polaris, l'offerta di fascia media MI8 su un chip Fiji e la soluzione di punta MI25 sulla futura GPU di fascia alta Vega. AMD afferma che l'intera famiglia è raffreddata passivamente, anche se ciò non è propriamente vero. Ogni modello sarà accompagnato da uno specifico requisito legato al flusso d'aria che deve esserci all'interno di un rack.

La Radeon Instinct MI6 ha 16 GB di memoria e raggiunge un TDP di 150 watt come la Radeon RX 480 del settore desktop. AMD indica prestazioni di picco FP16 di 5,7 TFLOPs e una frequenza di circa 1240 MHz, dato che il chip (Ellesmere) gestisce l'half-precision FP16 in modo simile alla singola precisione FP32. Il bandwidth di memoria è pari a 224 GB/s, che corrisponde esattamente a quanto assicurato dalla memoria GDDR5 a 7 Gb/s presente sulla RX 480.

Come Polaris, anche il chip Fiji ha un rapporto 1:1 tra FP16 e FP32, quindi gli 8,2 TFLOPs della scheda MI8 in half-precision sono identici a quanto indicato per la R9 Nano in singola precisione con una frequenza del core a 1000 MHz e 4096 SP attivi. Le due soluzioni condividono anche 4 GB di memoria HBM1.

2 training inference

Clicca per ingrandire

AMD ritiene che MI6 e MI8 siano ideali per l'inferenza, ossia per gestire il comportamento di una rete neurale dopo che è stata sottoposta a un intensivo stadio di allenamento. L'inferenza spesso richiede meno input dell'allenamento per garantire il miglior tempo di risposta possibile. Di conseguenza la ridotta quantità di memoria HBM di MI8 non dovrebbe impattare sulle prestazioni, in particolare grazie al bandwidth di memoria di 512 GB/s.

La soluzione di punta MI25 è quella che merita più attenzione. È basata su una GPU Vega non ancora annunciata, quindi i dettagli sono scarsi. La scheda è in grado di offrire prestazioni FP16 fino a 25 TFLOPs. Questo è possibile grazie un engine mixed-precision più preciso che accoglie due operazioni a 16 bit tramite le pipeline a 32 bit dell'architettura. La PS4 Pro di Sony offre la stessa capacità e potete scommettere che altri prodotti grafici AMD futuri l'avranno. Un throughput di calcolo decisamente maggiore e (probabilmente) un sacco di memoria HBM2 rendono la scheda più che adatta ai carichi di lavoro legati al deep learning.

Perché AMD pone l'accento sulle prestazioni FP16? La ricerca accademica ha mostrato che i calcoli in virgola mobile half-precision raggiungono un'accuratezza simile a quelli FP32 nei carichi del deep learning. Inoltre con FP16 si può sgravare il sottosistema di memoria da molta pressione in quei casi in cui la larghezza di banda è limitata. In un'architettura come Vega le prestazioni del calcolo FP16 teoricamente raddoppiano - con una minima perdita di precisione rispetto a FP32.

Non c'è da stupirsi che AMD volesse divulgare queste informazioni il prima possibile - il GP100 di Nvidia supporta già la mixed precision con un throughput fino a 21,2 TFLOPS in half-precision usando la frequenza GPU Boost. Inoltre Nvidia sta facendo grancassa su CUDA 8. Siamo ancora lontani diversi mesi dal vedere l'hardware basato su Vega, ma AMD può iniziare a parlare del lato software per indurre gli sviluppatori a programmare per questi acceleratori.

Sfruttare l'hardware con MIOpen

Oltre all'hardware AMD si è occupata anche di creare una libreria software accelerata dalla GPU per le sue schede Radeon Instinct chiamata MIOpen, che dovrebbe arrivare nel primo trimestre 2017.

L'azienda ha mostrato alcuni risultati preliminari generato dallo strumento DeepBench di Baidu Research. DeepBench testa le prestazioni di training usando aritmetica in virgola mobile a 32 bit. AMD riporta solo una delle operazioni di test (GEMM), quindi il risultato è piuttosto selezionato - ma anche l'hardware non è finale.

3 miopen performance

Clicca per ingrandire

AMD usa come base una GTX Titan X (Maxwell). Quella scheda ha una potenza di picco FP32 di 6,14 TFLOPs (usando la frequenza base). La Titan X (Pascal) sale a 10,2 TFLOPS grazie a una frequenza della GPU decisamente superiore. Usando la sua libreria MIOpen, AMD mostra che la Radeon Instinct MI8 da 8,2 TFLOPs batte la portabandiera di Nvidia.

Nel frattempo la MI25 sembra quasi il 50% più veloce della Titan (Pascal) e il 90% superiore alla Titan X di precedente generazione. In base a ciò che sappiamo sulla gestione mixed-precision di Vega, possiamo supporre che MI25 abbia una potenza FP32 pari a circa 12 TFLOPS. Ovviamente per raggiungere il vantaggio che AMD sta riportando, MIOpen deve essere ben ottimizzata per l'hardware.

4 rocm stack

Clicca per ingrandire

La libreria MIOpen è solo una parte della strategia software di AMD, che si affianca al supporto open source alla piattaforma Radeon Open Compute per Heterogeneous Compute Compiler, HIP (per convertire codice CUDA in portable C++), OpenCL e Python. ROCm incorpora anche il supporto per NCCL, una libreria di routine di comunicazione collettiva per topologie multi-GPU, tutte le librerie matematiche rilevanti e STL, una libreria software presente nella libreria standard del linguaggio C++.

All'inizio del 2016 AMD ha introdotto le schede della serie FirePro S con tecnologia Multi-User GPU basata su uno standard Single Root I/O Virtualization (SR-IOV). Questo ha dato alle macchine virtuali accesso diretto all'hardware grafico e sembra sia diventato piuttosto popolare per il cloud gaming, per esempio. AMD ora espone MxGPU per le soluzioni Radeon Instinct anche in applicazioni di machine intelligence.

In conclusione

Oltre ad annunciare gli acceleratori Radeon Instinct, AMD ha invitato anche una manciata di system integrator a mostrare i loro piani per le nuove schede.

Supermicro, per esempio, ha popolato l'esistente SuperServer 1028GQ-TFT (un sistema 1U dual-socket Xeon E5) con quattro schede MI25, garantendo fino a 100 TFLOPs di prestazioni FP16. Le schede Xeon Phi opzionali non supportano i calcoli half-precision e le Tesla P100 "a scheda" (AIC) sulla lista di Supermicro sono più lente della versione "mezzanina", raggiungendo 18,7 TFLOPs ciascuna.

5 supermicro 1028gq

Clicca per ingrandire

Inventec ha invece parlato della piattaforma 39U con 120 GPU MI25, sei server 2U a 24 bay e sei switch PCIe 4U per una potenza fino a 3 PFLOPs.

6 inventec rack

Clicca per ingrandire

Naturalmente AMD ha anticipato un prossimo futuro in cui CPU Zen e acceleratori Radeon Instinct lavoreranno insieme in un ambiente di calcolo eterogeneo. Siamo però ad almeno sei mesi di distanza da tale combinazione.

Radeon RX 470 4 GB Radeon RX 470 4 GB
ePRICE

Radeon RX 460 2 GB Radeon RX 460 2 GB
ePRICE

Radeon RX 480 4 GB Radeon RX 480 4 GB
ePRICE

Radeon RX 480 8 GB Radeon RX 480 8 GB