TPU v5e

Questo documento descrive l'architettura e le configurazioni supportate di Cloud TPU v5e.

TPU v5e supporta l'addestramento con host singolo e multiplo e l'inferenza con host singolo. L'inferenza multi-host è supportata utilizzando Sax. Per ulteriori informazioni, consulta la sezione Pubblicazione di modelli linguistici di grandi dimensioni.

Architettura di sistema

Ogni chip v5e contiene un Tensor Core. Ogni Tensor Core ha quattro unità di moltiplicazione a matrice (MXU), un'unità vettoriale e un'unità scalare.

Il seguente diagramma illustra un chip TPU v5e.

Diagramma di un chip v5e

La tabella seguente mostra le specifiche principali del chip e i relativi valori per la versione v5e.

Specifiche principali del chip Valori v5e
Potenza di calcolo di picco per chip (bf16) 197 TFLOP
Capacità e larghezza di banda HBM2 16 GB, 819 GB/s
Interchip Interconnect BW 1600 Gbps

La seguente tabella mostra le specifiche dei pod e i relativi valori per la versione 5e.

Specifiche principali del pod Valori v5e
Dimensioni pod di TPU 256 chip
Topologia dell'interconnessione Toroide 2D
Potenza di picco per pod 100 PetaOps(Int8)
Larghezza di banda all-reduce per pod 51,2 TB/s
Larghezza di banda bisezionale per pod 1,6 TB/s
Larghezza di banda della rete del data center per pod 6,4 Tbps

Configurazioni

Cloud TPU v5e è un prodotto combinato di addestramento e inferenza (pubblicazione). Per distinguere un ambiente di addestramento da un ambiente di inferenza, utilizza i flag AcceleratorType o AcceleratorConfig con l'API TPU o il flag --machine-type quando crei un pool di nodi GKE.

I job di addestramento sono ottimizzati per la velocità in transito e la disponibilità, mentre i job di pubblicazione sono ottimizzati per la latenza. Un job di addestramento su TPU di cui è stato eseguito il provisioning per l'erogazione potrebbe avere una disponibilità inferiore e, analogamente, un job di erogazione eseguito su TPU di cui è stato eseguito il provisioning per l'addestramento potrebbe avere una latenza più elevata.

Utilizza AcceleratorType per specificare il numero di TensorCore che vuoi utilizzare. Specifica AcceleratorType quando crei una TPU utilizzando gcloud CLI o la console Google Cloud. Il valore specificato per AcceleratorType è una stringa con il formato:v$VERSION_NUMBER-$CHIP_COUNT.

Puoi anche utilizzare AcceleratorConfig per specificare il numero di TensorCore che vuoi utilizzare. Tuttavia, poiché non esistono varianti di topologia 2D personalizzate per la TPU v5e, non c'è differenza tra l'utilizzo di AcceleratorConfig e AcceleratorType.

Per configurare una TPU v5e utilizzando AcceleratorConfig, utilizza i flag --version e --topology. Imposta --version sulla versione di TPU che vuoi utilizzare e --topology sulla disposizione fisica dei chip TPU nella sezione. Il valore specificato per AcceleratorConfig è una stringa con il formato AxB, dove A e B sono i conteggi dei chip in ogni direzione.

Per la versione 5e sono supportate le seguenti forme di slice 2D:

Topologia Numero di chip TPU Numero di host
1x1 1 1/8
2x2 4 1/2
2x4 8 1
4x4 16 2
4x8 32 4
8x8 64 8
8x16 128 16
16x16 256 32

Ogni VM TPU in una sezione TPU v5e contiene 1, 4 o 8 chip. Nelle sezioni con 4 chip o meno, tutti i chip TPU condividono lo stesso nodo NUMA (Non Uniform Memory Access).

Per le VM TPU v5e a 8 chip, la comunicazione CPU-TPU sarà più efficiente all'interno delle partizioni NUMA. Ad esempio, nella figura seguente, la comunicazione CPU0-Chip0 sarà più rapida della comunicazione CPU0-Chip4.

Comunicazione dei nodi NUMA

Tipi di Cloud TPU v5e per la pubblicazione

La pubblicazione su un singolo host è supportata per un massimo di 8 chip v5e. Sono supportate le seguenti configurazioni: slice 1x1, 2x2 e 2x4. Ogni sezione ha rispettivamente 1, 4 e 8 chip.

Configurazioni TPU v5e che supportano la pubblicazione: 1x1, 2x2 e 2x4.

Per eseguire il provisioning delle TPU per un job di pubblicazione, utilizza uno dei seguenti tipi di acceleratore nella richiesta di creazione di TPU tramite l'API o la CLI:

AcceleratorType (API TPU) Tipo di macchina (API GKE)
v5litepod-1 ct5lp-hightpu-1t
v5litepod-4 ct5lp-hightpu-4t
v5litepod-8 ct5lp-hightpu-8t

La pubblicazione su più di 8 chip v5e, chiamata anche pubblicazione multi-host, è supportata utilizzando Sax. Per ulteriori informazioni, consulta la sezione Pubblicazione di modelli linguistici di grandi dimensioni.

Tipi di Cloud TPU v5e per l'addestramento

L'addestramento è supportato per un massimo di 256 chip.

Per eseguire il provisioning delle TPU per un job di addestramento v5e, utilizza uno dei seguenti tipi di acceleratore nella richiesta di creazione di TPU tramite CLI o API:

AcceleratorType (API TPU) Tipo di macchina (API GKE) Topologia
v5litepod-16 ct5lp-hightpu-4t 4x4
v5litepod-32 ct5lp-hightpu-4t 4x8
v5litepod-64 ct5lp-hightpu-4t 8x8
v5litepod-128 ct5lp-hightpu-4t 8x16
v5litepod-256 ct5lp-hightpu-4t 16x16

Confronto dei tipi di VM TPU v5e:

Tipo di VM n2d-48-24-v5lite-tpu n2d-192-112-v5lite-tpu n2d-384-224-v5lite-tpu
N° di chip v5e 1 4 8
Numero di vCPU 24 112 224
RAM (GB) 48 192 384
# of NUMA Nodes 1 1 2
Si applica a v5litepod-1 v5litepod-4 v5litepod-8
Interruzione Alta Medie Bassa

Per fare spazio ai carichi di lavoro che richiedono più chip, gli schedulatori possono eseguire l'anticipo delle VM con meno chip. Pertanto, le VM a 8 chip hanno maggiori probabilità di prelevare le VM a 1 e 4 chip.