Macchine TPU nella famiglia di macchine ottimizzate per l'acceleratore

Questo documento descrive le istanze Compute Engine nella famiglia di macchine ottimizzate per l'acceleratore che dispongono di Tensor Processing Unit (TPU). Le TPU sono circuiti integrati specifici per le applicazioni (ASIC) sviluppati da Google e ottimizzati appositamente per i carichi di lavoro di intelligenza artificiale (AI) e machine learning (ML).

Compute Engine supporta le seguenti versioni di TPU:

  • TPU7x
  • TPU v6e
  • TPU v5p

Ogni tipo di macchina all'interno di una versione ha una topologia specifica e un numero di chip TPU collegati.

Concetti fondamentali dell'architettura TPU

Comprendere i fondamenti dell'architettura TPU ti aiuta a scegliere la versione della TPU e il tipo di macchina per il tuo workload.

  • Chip TPU: un chip TPU è un acceleratore specializzato progettato da Google per il machine learning. Ogni chip TPU contiene uno o più TensorCore per gestire operazioni con matrici di grandi dimensioni. Ogni Tensor Core è costituito da una o più unità di moltiplicazione a matrice (MXU), che utilizzano un'architettura di array sistolica per eseguire migliaia di operazioni di moltiplicazione e accumulo per ciclo senza accesso costante alla memoria. Sebbene utilizzato principalmente per l'elaborazione di matrici ad alta velocità, il chip TPU include anche unità vettoriali e scalari per operazioni di calcolo e flusso di controllo generali.

  • pod di TPU: un pod di TPU è un insieme contiguo di TPU raggruppate in una rete specializzata. Il numero di chip TPU in un pod di TPU dipende dalla versione di TPU.

  • VM TPU: una VM TPU è una macchina virtuale Linux che viene eseguita su un host TPU e ha accesso alle TPU sottostanti. Puoi connetterti direttamente alle VM TPU utilizzando SSH. Hai accesso root alla VM, quindi puoi eseguire codice arbitrario. Puoi accedere ai log di debug e ai messaggi di errore del compilatore e del runtime.

  • Sezione TPU: un gruppo logico di chip TPU interconnessi, a cui si accede tramite una o più VM TPU. Gli slice hanno uno dei seguenti ambiti:

    • Slice a un solo host: uno slice costituito da una sola macchina host. In generale, questa operazione viene mappata a una VM TPU.
    • Slice multi-host: una slice costituita da più VM TPU interconnesse tramite un'interconnessione inter-chip (ICI) ad alta velocità.
  • Cubo TPU: una topologia 4x4x4 di chip TPU interconnessi. Questo vale solo per le topologie 3D.

  • SparseCore: SparseCore sono processori di dataflow che accelerano i modelli utilizzando operazioni sparse. Un caso d'uso principale è l'accelerazione dei modelli di consigli, che si basano fortemente sugli incorporamenti.

  • Versioni TPU: l'architettura esatta di un chip TPU dipende dalla versione della TPU che utilizzi. Ogni versione della TPU supporta anche dimensioni e configurazioni di slice diverse.

Per informazioni sul funzionamento delle TPU, consulta il documento Architettura TPU nella documentazione di Cloud TPU.

Versioni di TPU consigliate per tipo di workload

Versione TPU Tipi di workload principali
TPU7x (Ironwood)
  • Modelli densi e Mixture-of-Experts (MoE) su larga scala
  • Pre-addestramento intensivo per modelli di base di grandi dimensioni
  • Campionamento e inferenza con decodifica
TPU v6e (Trillium)
  • Addestramento e perfezionamento (Transformer, CNN)
  • Inferenza su larga scala (Gemma 2, Llama, modelli di diffusione)
  • Motori per suggerimenti e personalizzazione (utilizzando SparseCore)
TPU v5p
  • Massime prestazioni per l'addestramento di modelli di base su larga scala
  • Addestramento dell'AI multimodale su larga scala
  • Workload densi di incorporamenti come i grandi sistemi di consigli

Opzioni di consumo

Per ottimizzare l'utilizzo delle risorse e i costi bilanciando le prestazioni del workload, Compute Engine supporta le seguenti opzioni di consumo delle TPU:

  • On demand: per utilizzare le TPU senza organizzare la capacità in anticipo. Prima di richiedere risorse, devi disporre di una quota on demand sufficiente per il tipo e la quantità specifici di VM TPU. L'opzione di consumo su richiesta è la più flessibile, ma non è garantito che siano disponibili risorse su richiesta sufficienti per soddisfare la tua richiesta.

  • VM spot: per eseguire il provisioning delle VM spot, puoi ottenere sconti significativi, ma le VM spot possono essere prerilasciate in qualsiasi momento, con un avviso di 30 secondi. Per saperne di più, consulta Informazioni sulle VM spot.

  • Avvio flessibile: per eseguire il provisioning di VM con avvio flessibile per un massimo di sette giorni, con Compute Engine che alloca automaticamente l'hardware in base alla disponibilità. Per saperne di più, consulta Informazioni sulle VM con avvio flessibile.

  • Prenotazione futura: per richiedere una prenotazione futura per un anno o più. Per saperne di più, consulta Richiedere una prenotazione futura per un anno o più nella documentazione di Cloud TPU.

  • Prenotazione futura in modalità calendario: per eseguire il provisioning delle risorse TPU per un massimo di 90 giorni, per un periodo di tempo specificato. Per saperne di più, vedi Informazioni sulle richieste di prenotazione futura in modalità calendario.

On demand è il modello di consumo predefinito per le TPU se non specifichi un'altra opzione.

Per informazioni sul modello di provisioning sottostante che attiva l'opzione di consumo, consulta Informazioni sui modelli di provisioning delle VM.

Disponibilità delle opzioni di consumo per versione di TPU

La tabella seguente riassume la disponibilità di ciascuna opzione di consumo in base alle versioni della TPU.

Versione TPU On demand Spot Avvio flessibile Prenotazioni on demand Prenotazioni future Prenotazioni future in modalità calendario
1 1 1

1 Le prenotazioni spot, con avvio flessibile e future in modalità calendario per TPU7x sono limitate da una lista consentita. Per richiedere l'accesso, contatta il tuo team dedicato all'account o il team di vendita.

Confronto tra le versioni di TPU

Confronta le caratteristiche delle diverse versioni di TPU. Puoi selezionare proprietà specifiche nel campo Scegli le proprietà da confrontare per confrontarle in tutte le versioni della TPU riportate nella seguente tabella.

Ottimizzata per l'acceleratore Ottimizzata per l'acceleratore Ottimizzata per l'acceleratore
VM VM VM
Intel Emerald Rapids AMD EPYC Genoa Intel Sapphire Rapids
x86 x86 x86
224 Da 44 a 180 208
Thread Thread Thread
960 GB 176-1440 GB 448 GB
NUMA NUMA NUMA
NVMe NVMe NVMe
gVNIC gVNIC gVNIC
400 Gbps 50-400 Gbps 200 Gbps
4 8 4
sconti sconti sconti
sconti sconti sconti

Specifiche dell'architettura TPU

La tabella seguente elenca le specifiche chiave per ogni versione della TPU.

Specifica TPU7x TPU v6e TPU v5p
Numero di chip per pod 9216 256 8960
Picco di calcolo per chip (BF16) (TFLOP) 2307 918 459
Picco di calcolo per chip (FP8) (TFLOP) 4614 918 459
Capacità HBM per chip (GiB) 192 32 95
Larghezza di banda HBM per chip (GiBps) 7380 1638 2575
Numero di vCPU (VM a 4 chip) 224 180 208
RAM (GiB) (VM a 4 chip) 960 720 448
Numero di Tensor Core per chip 2 1 2
Numero di SparseCore per chip 4 2 4
Larghezza di banda bidirezionale di interconnessione tra chip (ICI) per chip (GBps) 1200 800 1200
Larghezza di banda della rete del data center (DCN) per chip (Gbps) 100 100 50

Tipi di macchine TPU

Le sezioni seguenti descrivono i tipi di macchine disponibili per ogni versione della TPU.

TPU7x (Ironwood)

Ogni macchina virtuale (VM) TPU7x contiene 4 chip TPU. Tutte le sezioni TPU7x utilizzano VM full-host a 4 chip.

Ogni chip TPU7x contiene due TensorCore e quattro SparseCore.

Il modello di programmazione Ironwood ti consente di accedere a due dispositivi TPU anziché a un'architettura con un singolo core logico utilizzata nelle generazioni precedenti. Per maggiori informazioni, consulta la sezione Architettura dual-chiplet nella documentazione di Cloud TPU.

Tipo di macchina Numero di vCPU Memoria istanza (GiB) Numero di NIC fisiche Larghezza di banda massima della rete (Gbps) Numero di chip TPU per VM Numero di nodi NUMA Memoria TPU totale (GiB HBM)
tpu7x-standard-4t 224 960 2 400 4 2 768

Per ulteriori informazioni sull'architettura TPU7x, consulta TPU7x (Ironwood) nella documentazione di Cloud TPU.

TPU v6e (Trillium)

Ogni VM TPU v6e può contenere 1, 4 o 8 chip TPU. Le sezioni a 4 chip e più piccole hanno lo stesso nodo NUMA (accesso alla memoria non uniforme).

Le sezioni v6e vengono create utilizzando VM half-host, ciascuna con 4 chip TPU, ad eccezione di:

  • ct6e-standard-1t con un solo chip TPU è destinato principalmente ai test.
  • ct6e-standard-8t è una VM full-host ottimizzata per un caso d'uso di inferenza, che consente di utilizzare tutti gli 8 chip TPU collegati a una singola VM in un unico workload di gestione.
Tipo di macchina Numero di vCPU Memoria istanza (GB) Numero di NIC fisiche Larghezza di banda massima della rete (Gbps) Numero di chip TPU per VM Numero di nodi NUMA Memoria TPU totale (GiB HBM)
ct6e-standard-1t 44 176 1/4 50 1 1 32
ct6e-standard-4t 180 720 2 400 4 1 128
ct6e-standard-8t 360 1440 1 200 8 2 256

Per saperne di più sull'architettura di TPU v6e, consulta la sezione TPU v6e nella documentazione di Cloud TPU.

TPU v5p

Un pod TPU v5p è composto da 8960 chip TPU interconnessi con link riconfigurabili ad alta velocità. La rete flessibile di TPU v5p ti consente di connettere i chip TPU in una slice delle stesse dimensioni in più modi. L'addestramento su una singola sezione è supportato per un massimo di 6144 chip TPU.

Tipo di macchina Numero di vCPU Memoria istanza (GB) Numero di NIC fisiche Larghezza di banda massima della rete (Gbps) Numero di chip TPU per VM Numero di nodi NUMA Memoria TPU totale (GiB HBM)
ct5p-hightpu-4t 208 448 1 200 4 2 380

Per saperne di più sull'architettura TPU v5p, consulta TPU v5p nella documentazione di Cloud TPU.

Topologia TPU

La topologia definisce la disposizione fisica delle TPU all'interno di una sezione TPU. A seconda della versione della TPU, la topologia è bidimensionale o tridimensionale. Puoi identificare il numero di chip TPU in una sezione calcolando il prodotto di ogni dimensione nella topologia. Ad esempio:

  • Il tipo di macchina tpu7x-standard-4t con una topologia 2x2x2 è una sezione TPU7x multi-host a 8 chip.

La tabella seguente elenca le topologie disponibili per ogni versione di TPU.

Versione TPU Tipo di macchina Ambito Specifiche tecniche
TPU7x (Ironwood) tpu7x-standard-4t A host singolo
  • Topologia: 2x2x1
  • Numero di chip TPU per la topologia: 4
  • Numero di host: 1
  • Numero di VM: 1
  • Conteggio cubi: 1/16
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 2x2x2
  • Numero di chip TPU per la topologia: 8
  • Numero di host: 2
  • Numero di VM: 2
  • Conteggio cubi: 1/8
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 2x2x4
  • Numero di chip TPU per la topologia: 16
  • Numero di host: 4
  • Numero di VM: 4
  • Conteggio cubi: 1/4
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 2x4x4
  • Numero di chip TPU per la topologia: 32
  • Numero di host: 8
  • Numero di VM: 8
  • Conteggio cubi: 1/2
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 4x4x4
  • Numero di chip TPU per la topologia: 64
  • Numero di host: 16
  • Numero di VM: 16
  • Conteggio cubi: 1
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 4x4x8
  • Numero di chip TPU per la topologia: 128
  • Numero di host: 32
  • Numero di VM: 32
  • Conteggio cubi: 2
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 4x8x8
  • Numero di chip TPU per la topologia: 256
  • Numero di host: 64
  • Numero di VM: 64
  • Conteggio cubi: 4
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 8x8x8
  • Numero di chip TPU per la topologia: 512
  • Numero di host: 128
  • Numero di VM: 128
  • Conteggio cubi: 8
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: 8x8x16
  • Numero di chip TPU per la topologia: 1024
  • Numero di host: 256
  • Numero di VM: 256
  • Conteggio dei cubi: 16
TPU7x (Ironwood) tpu7x-standard-4t Multi-host
  • Topologia: {A}x{B}x{C} (dove A, B e C sono multipli di due)
  • Numero di chip TPU per la topologia: A*B*C
  • Numero di host: (A*B*C)/4
  • Numero di VM: (A*B*C/4)
  • Conteggio cubi: (A*B*C/64)
TPU v6e (Trillium) ct6e-standard-1t A host singolo
  • Topologia: 1x1
  • Numero di chip TPU per la topologia: 1
  • Numero di VM: 1
TPU v6e (Trillium) ct6e-standard-8t A host singolo
  • Topologia: 2x4
  • Numero di chip TPU per la topologia: 8
  • Numero di VM: 1
TPU v6e (Trillium) ct6e-standard-4t A host singolo
  • Topologia: 2x2
  • Numero di chip TPU per la topologia: 4
  • Numero di VM: 1
TPU v6e (Trillium) ct6e-standard-4t Multi-host
  • Topologia: 2x4
  • Numero di chip TPU per la topologia: 8
  • Numero di VM: 2
TPU v6e (Trillium) ct6e-standard-4t Multi-host
  • Topologia: 4x4
  • Numero di chip TPU per la topologia: 16
  • Numero di VM: 4
TPU v6e (Trillium) ct6e-standard-4t Multi-host
  • Topologia: 4x8
  • Numero di chip TPU per la topologia: 32
  • Numero di VM: 8
TPU v6e (Trillium) ct6e-standard-4t Multi-host
  • Topologia: 8x8
  • Numero di chip TPU per la topologia: 64
  • Numero di VM: 16
TPU v6e (Trillium) ct6e-standard-4t Multi-host
  • Topologia: 8x16
  • Numero di chip TPU per la topologia: 128
  • Numero di VM: 32
TPU v6e (Trillium) ct6e-standard-4t Multi-host
  • Topologia: 16x16
  • Numero di chip TPU per la topologia: 256
  • Numero di VM: 64
TPU v5p ct5p-hightpu-4t A host singolo
  • Topologia: 2x2x1
  • Numero di chip TPU per la topologia: 4
  • Numero di VM: 1
TPU v5p ct5p-hightpu-4t Multi-host
  • Topologia: 2x2x2
  • Numero di chip TPU per la topologia: 8
  • Numero di VM: 2
TPU v5p ct5p-hightpu-4t Multi-host
  • Topologia: 2x2x4
  • Numero di chip TPU per la topologia: 16
  • Numero di VM: 4
TPU v5p ct5p-hightpu-4t Multi-host
  • Topologia: 2x4x4
  • Numero di chip TPU per la topologia: 32
  • Numero di VM: 8
TPU v5p ct5p-hightpu-4t Multi-host
  • Topologia: {A}x{B}x{C} (dove A, B e C sono multipli di due)
  • Numero di chip TPU per la topologia: A*B*C
  • Numero di VM: (A*B*C/4)1
  1. Viene calcolato dividendo il prodotto della topologia per quattro.

Passaggi successivi