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 matriciale (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 pod v3
Picco computing per chip 123 teraFLOPS (bf16)
Capacità e larghezza di banda HBM2 32 GiB, 900 GB/s
Potenza minima/media/max misurata 123/220/262 E
Dimensione pod di TPU 1024 chip
Topologia di interconnessione Toro 2D
Picco computing per pod 126 petaflops (bf16)
Riduce completamente la larghezza di banda per pod 340 TB/s
Larghezza di banda bisezione per pod 6,4 TB/s

Il seguente diagramma illustra un chip TPU v3.

Diagramma di 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 in termini di prestazioni di TPU v3 rispetto a v2

L'aumento dei FLOPS per TensorCore e della capacità di memoria nelle configurazioni TPU v3 può migliorare le prestazioni dei tuoi modelli nei seguenti modi:

  • Le configurazioni TPU v3 offrono vantaggi significativi in termini di prestazioni per TensorCore per i modelli legati al calcolo. I modelli legati alla memoria sulle configurazioni TPU v2 potrebbero non ottenere questo stesso miglioramento delle prestazioni se sono vincolati anche alla memoria nelle configurazioni TPU v3.

  • Nei casi in cui i dati non rientrano nella memoria nelle configurazioni TPU v2, TPU v3 può fornire prestazioni migliori e ridurre il ricalcolo dei valori intermedi (rimaterializzazione).

  • Le configurazioni TPU v3 possono eseguire nuovi modelli con dimensioni batch non adatte alle configurazioni TPU v2. Ad esempio, TPU v3 potrebbe consentire modelli ResNet più profondi e immagini più grandi con RetinaNet.

Anche i modelli quasi legati all'input ("infeed") su TPU v2 perché i passaggi di addestramento in attesa di input potrebbero essere associati all'input con Cloud TPU v3. La guida alle prestazioni della pipeline può aiutarti a risolvere i problemi relativi al feed.

Configurazioni

Un pod TPU v3 è composto da 1024 chip interconnessi con link ad alta velocità. Per creare una sezione di pod o dispositivo TPU v3, utilizza il flag --accelerator-type nel comando di creazione della TPU (gcloud compute tpus tpu-vm). Puoi specificare il tipo di acceleratore specificando la versione TPU e il 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 seguente comando 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.16.1-pjrt

Nella tabella seguente sono elencati i tipi di TPU v3 supportati:

Versione TPU 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 saperne di più sulla gestione delle TPU, vedi Gestire le TPU. Per ulteriori informazioni sull'architettura di sistema di Cloud TPU, consulta Architettura di sistema.