TPU v3
Questo documento descrive l'architettura e le configurazioni supportate di Cloud TPU v3.
Architettura di sistema
Ogni chip TPU v3 contiene due TensorCore. Ogni TensorCore ha due unità di moltiplicazione a matrice (MXU), un'unità vettoriale e un'unità scalare. La tabella seguente mostra le specifiche principali e i relativi valori per un pod di TPU v3.
Specifiche principali | Valori del pod v3 |
---|---|
Potenza di calcolo di picco per chip | 123 teraflops (bf16) |
Capacità e larghezza di banda di HBM2 | 32 GiB, 900 Gbps |
Potenza minima/media/massima misurata | 123/220/262 W |
Dimensione pod di TPU | 1024 chip |
Topologia dell'interconnessione | Toro 2D |
Picco di computing per pod | 126 petaflop (bf16) |
Larghezza di banda all-reduce per pod | 340 TB/s |
Larghezza di banda bisezionale per pod | 6,4 TB/s |
Il seguente diagramma mostra un chip TPU v3.
I dettagli dell'architettura e le caratteristiche delle prestazioni di TPU v3 sono disponibili in Un supercomputer specifico per il dominio per l'addestramento di reti neurali profonde.
Vantaggi delle prestazioni di TPU v3 rispetto a v2
Aumento dei FLOPS per TensorCore e della capacità di memoria nelle configurazioni TPU v3 possono migliorare le prestazioni dei tuoi modelli nei seguenti modi:
Le configurazioni TPU v3 offrono notevoli vantaggi in termini di prestazioni TensorCore per i modelli legati al calcolo. I modelli con vincoli di memoria nelle configurazioni TPU v2 potrebbero non ottenere lo stesso miglioramento delle prestazioni se sono vincolati anche dalla memoria nelle configurazioni TPU v3.
Nei casi in cui i dati non rientrano nella memoria delle configurazioni TPU v2, TPU v3 può offrire prestazioni migliorate e ridurre il ricomputo dei valori intermedi (rematerializzazione).
Le configurazioni TPU v3 possono eseguire nuovi modelli con dimensioni dei batch che non erano supportate dalle configurazioni TPU v2. Ad esempio, TPU v3 potrebbe consentire modelli ResNet più profondi e immagini più grandi con RetinaNet.
Modelli che sono quasi legati all'input ("infeed") su TPU v2 perché i passaggi di addestramento in attesa di input potrebbe anche essere associato all'input con Cloud TPU v3. La guida sul rendimento della pipeline può aiutarti a risolvere i problemi infeed.
Configurazioni
Un pod TPU v3 è composto da 1024 chip interconnessi con link ad alta velocità. A
crea un dispositivo TPU v3 o una sezione di pod, usa --accelerator-type
nel comando di creazione TPU (gcloud compute tpus tpu-vm
). Puoi specificare il tipo di acceleratore specificando il parametro
Versione di TPU e numero di core TPU. Ad esempio, per una singola TPU v3, utilizza
--accelerator-type=v3-8
. Per una sezione di pod v3 con 128 TensorCore, utilizza
--accelerator-type=v3-128
.
Il comando seguente mostra come creare una sezione di pod di TPU v3 con 128 TensorCore:
$ gcloud compute tpus tpu-vm create tpu-name \ --zone=zone \ --accelerator-type=v3-128 \ --version=tpu-vm-tf-2.17.0-pod-pjrt
Nella tabella seguente sono elencati i tipi di TPU v3 supportati:
Versione TPU | Data di fine del supporto |
---|---|
v3-8 | (data di fine non ancora impostata) |
v3-32 | (data di fine non ancora impostata) |
v3-128 | (Data di fine non ancora impostata) |
v3-256 | (Data di fine non ancora impostata) |
v3-512 | (data di fine non ancora impostata) |
v3-1024 | (Data di fine non ancora impostata) |
v3-2048 | (data di fine non ancora impostata) |
Per ulteriori informazioni sulla gestione delle TPU, vedi Gestire le TPU. Per ulteriori informazioni sull'architettura di sistema di Cloud TPU, vedi Architettura del sistema.