Tesla V100 con GV100, sguardo ravvicinato a Nvidia Volta

Alla conferenza Hot Chips abbiamo avuto modo di vedere da vicino una scheda Nvidia Tesla V100 con chip GV100, la massima espressione dell'architettura Volta.

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

Alla conferenza Hot Chips Nvidia ha parlato della sua ultima GPU, GV100, basata su architettura Volta. Presentata alcuni mesi fa, si tratta di una soluzione indirizzata al mercato dei supercomputer e all'accelerazione dei carichi legati all'intelligenza artificiale. Non a caso trova spazio sulla scheda acceleratrice Tesla V100.

Di recente Nvidia ha fatto sapere che le schede video per il gaming basate su Volta arriveranno solo il prossimo anno. Le GPU a bordo di quelle schede saranno versioni rivedute e modificate di GV100, ma in attesa di vedere cos'ha in serbo l'azienda statunitense per i giocatori, i colleghi di Tom's Hardware USA hanno avuto la possibilità di vedere una Tesla V100 da vicino e parlare di GV100 con Rob Ober, Tesla Chief Platform Architect di Nvidia.

nvidia tesla v100 01

La soluzione mostrata da Nvidia non era nel classico formato da scheda video bensì in quello che è definito form factor SMX2. Quattro stack di memoria HBM2 per un totale di 16 GB sono posti sopra un substrato e sono visibili ai lati opposti del die. Sono affiancati da quattro "supporti" che permettono al package di sostenere la pressione di un dissipatore.

Con Volta Nvidia si è spinta ai limiti della produzione dei semiconduttori, realizzando il suo die più grande. Stiamo parlando di 815 mm2 al cui interno ci sono 21 miliardi di transistor prodotti da TSMC con processo 12 nm FFN. Come i più esperti immaginano, produrre un chip così complesso e di tali dimensioni pone grandi sfide e la probabilità che emergano difetti è molto alta.

La GPU GV100 a bordo di questa scheda Tesla ha 80 SM attivi, per un totale di 5120 CUDA core. In realtà, come spiegammo in occasione della presentazione a maggio, il chip conta 84 SM per un totale di 5376 core. Quattro SM "di riserva" permettono di sopperire a qualsiasi difetto nel processo di produzione; la probabilità che un SM soffra di un difetto è alta, mentre la chance che siano quattro a mostrare problemi è piuttosto bassa.

Nvidia semplicemente disattiva gli SM difettosi per aumentare le rese. Qualora un difetto irreparabile dovesse colpire un'area critica del chip, come le interconnessioni di I/O, il die - di solito - viene scartato. Detto questo, il die di Volta rappresenta un notevole passo avanti: è il 33% più grande di GP100 (610 mm2, 15,3 miliardi di transistor).

tesla v100 01 JPG

Nvidia ha dotato la parte posteriore di GV100 con due connettori. Uno, primario, si occupa del tradizionale traffico PCIe mentre l'altro è dedicato a NVLink. I moduli GV100 sono assicurati alle schede tramite otto agganci, mentre le schede possono essere integrate in chassis di varie altezze.

nvidia tesla v100 architettura 17 JPG

Un insieme di 16 induttori e regolatori di tensione si allineano sui bordi della scheda. Il package ha una richiesta media di 300W con poco meno di 1V, quindi nel die scorrono oltre 300A. Per raffreddare il tutto Nvidia ha creato dei design di riferimento, ma gran parte dei clienti HPC optano per soluzioni a liquido personalizzate, mentre altri per soluzioni ad aria. Il dissipatore si collega ai quattro fori con bordo argentato posti accanto al die.

nvidia tesla v100 architettura 18 JPG

nvidia tesla v100 architettura 19 JPG

Nvidia ha progettato il protocollo proprietario NVLink specificatamente per la comunicazione a bassa latenza e ad alto throughput tra e all'interno della GPU. L'azienda ha pensato di aprire il protocollo a tutti, rendendolo un possibile standard, ma poi ha deciso di non farlo perché ha pensato che ciò avrebbe potuto ostacolarne lo sviluppo. Diversi consorzi stanno sviluppando standard concorrenti aperti, come CCIX e CAPI, ma Nvidia ritiene che NVLink sia una soluzione migliore.

tesla v100 02 JPG

Nvidia, durante la chiacchierata, ci ha ricordato gli enormi miglioramenti prestazionali rispetto a P100. Si parla di prestazioni 12 volte maggiori nell'allenamento delle reti neurali e un incremento di 6 volte nell'inferencing. Le prestazioni, oltre che alla GPU, sono dovute a una più veloce HBM2 e alle cache L1 e L2. Allo stesso tempo il bandwidth maggiore di NVLink 2.0 ha quasi raddoppiato il throughput all'interno della GPU.

80 SM (Streaming Multiprocessors), per un totale di 5120 CUDA core e 640 Tensor core, popolano il die. I miglioramenti includono warp scheduler raddoppiati, una grande cache L1 instruction e l'accelerazione tensor. La cache L1 instruction condivisa alimenta un'istruzione warp per ciclo di clock verso i "sub core" alimentati in modo indipendente. Ogni sub core processa un'istruzione warp per ciclo di clock e si alimenta nell'unità MIO condivisa. L'unità MIO ospita texture, cache L1 dati condivisa e memoria condivisa.

Ogni sub core di un SM ha la propria cache L0 instruction e un'unità branch dedicata. Lo scheduler warp alimenta l'unità math dispatch, invia istruzioni MIO al MIO instruction queue per il successivo scheduling e alimenta i due 4x4x4 Tensor core (che sono usati specificatamente per il deep learning).

I quattro sub core inviano istruzioni all'interno dello scheduler MIO. La cache L1 dati da 128KB fornisce 128 byte di bandwidth per ciclo di clock. Ogni sub core ha una connessione da 64 byte per ciclo di clock verso la cache L1 dati. Nvidia dice di aver progettato il sottosistema cache per avere prestazioni di streaming dati superiori, ottenendo quattro volte il bandwidth e la capacità rispetto a GP100.

Nvidia, infine, ha condiviso informazioni sullo scheduling indipendente dei thread di Tesla V100, insieme a dettagli sui Tensor core mixed-precision FP16/FP32 che potete apprezzare nelle slide della galleria qui sopra.


Tom's Consiglia

Anche se sogniamo una GeForce Volta la GTX 1080 Ti rimane una scheda eccezionale.