TPU v5e

In diesem Dokument werden die Architektur und die unterstützten Konfigurationen von Cloud TPU v5e.

TPU v5e unterstützt Training mit einem und mehreren Hosts sowie Inferenz mit einzelnen Hosts. Die Inferenz auf mehrere Hosts wird mit Sax unterstützt. Weitere Informationen finden Sie unter Large Language Model Serving.

Systemarchitektur

Jeder v5e-Chip enthält einen TensorCore. Jeder TensorCore hat vier Matrixmultiplikationseinheiten (MXUs), eine Vektoreinheit und eine Skalareinheit.

Das folgende Diagramm zeigt einen TPU v5e-Chip.

Diagramm eines v5e-Chips

In der folgenden Tabelle sind die wichtigsten Chip-Spezifikationen und ihre Werte für v5e aufgeführt.

Wichtige Chip-Spezifikationen v5e-Werte
Spitzenwert der Rechenleistung pro Chip (bf16) 197 TFLOPS
HBM2-Kapazität und -Bandbreite 16 GB, 819 Gbit/s
Interchip-Interconnect-BW 1.600 Gbit/s

In der folgenden Tabelle sind Pod-Spezifikationen und deren Werte für v5e aufgeführt.

Wichtige Pod-Spezifikationen v5e-Werte
TPU-Pod-Größe 256 Chips
Interconnect-Topologie 2D-Torus
Spitzenberechnung pro Pod 100 PetaOps(Int8)
Bandbreite pro Pod insgesamt reduzieren 51,2 TB/s
Biabschnitte Bandbreite pro Pod 1,6 TB/s
Rechenzentrumsnetzwerkbandbreite pro Pod 6,4 Tbit/s

Konfigurationen

Cloud TPU v5e ist ein kombiniertes Produkt für Training und Inferenz (Ausführung). Bis zwischen einer Trainings- und einer Inferenzumgebung unterscheiden können, verwenden Sie AcceleratorType- oder AcceleratorConfig-Flags mit der TPU API oder dem Flag --machine-type beim Erstellen eines GKE-Knotens Pool.

Trainingsjobs sind für Durchsatz und Verfügbarkeit optimiert, während Bereitstellungsjobs für Latenz optimiert sind. Ein Trainingsjob auf TPUs, die für die Bereitstellung bereitgestellt sind, kann eine geringere Verfügbarkeit haben. Ebenso kann ein Bereitstellungsjob, der auf TPUs ausgeführt wird, die für das Training bereitgestellt sind, eine höhere Latenz haben.

Mit AcceleratorType geben Sie die Anzahl der TensorCores an, die Sie verwenden möchten. Sie geben die AcceleratorType beim Erstellen einer TPU mithilfe der gcloud CLI oder der Google Cloud Console Der für AcceleratorType angegebene Wert ist ein String im Format: v$VERSION_NUMBER-$CHIP_COUNT.

Sie können auch AcceleratorConfig verwenden, um die Anzahl der zu verwendenden TensorCores anzugeben. Da es jedoch keine benutzerdefinierten 2D-Topologievarianten für TPU v5e gibt, gibt es keinen Unterschied zwischen der Verwendung von AcceleratorConfig und AcceleratorType.

Verwenden Sie zum Konfigurieren einer TPU v5e mit AcceleratorConfig die Flags --version und --topology. Legen Sie --version auf die gewünschte TPU-Version und --topology auf die physische Anordnung der TPU-Chips im Slice fest. Der für AcceleratorConfig angegebene Wert ist ein String im Format AxB, wobei A und B die Chipanzahl in jede Richtung ist.

Die folgenden 2D-Segmentformen werden in v5e unterstützt:

Topologie Anzahl der TPU-Chips Anzahl der Hosts
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

Jede TPU-VM in einem TPU-Slice vom Typ v5e enthält 1, 4 oder 8 Chips. In Slices mit 4 Chips und weniger teilen sich alle TPU-Chips denselben NUMA-Knoten (Non Uniform Memory Access).

Bei TPU-VMs mit 8 Chips vom Typ v5e ist die CPU-TPU-Kommunikation innerhalb von NUMA-Partitionen effizienter. In der folgenden Abbildung ist beispielsweise die CPU0-Chip0-Kommunikation schneller als die CPU0-Chip4-Kommunikation.

NUMA-Knotenkommunikation

Cloud TPU v5e-Typen für die Bereitstellung

Die Bereitstellung über einen einzelnen Host wird für bis zu acht V5e-Chips unterstützt. Die folgenden Konfigurationen werden unterstützt: 1x1-, 2x2- und 2x4-Segmente. Jedes Segment hat 1, 4 und 8 Chips.

TPU v5e-Konfigurationen, die das Serving unterstützen: 1x1, 2x2 und 2x4.

Wenn Sie TPUs für einen Bereitstellungsjob bereitstellen möchten, verwenden Sie in Ihrer CLI- oder API-Anfrage zum Erstellen von TPUs einen der folgenden Beschleunigertypen:

AcceleratorType (TPU API) Maschinentyp (GKE API)
v5litepod-1 ct5lp-hightpu-1t
v5litepod-4 ct5lp-hightpu-4t
v5litepod-8 ct5lp-hightpu-8t

Die Bereitstellung auf mehr als 8 v5e-Chips, auch als Multihost-Bereitstellung bezeichnet, wird mit Sax unterstützt. Weitere Informationen finden Sie unter Large Language Model Serving

Cloud TPU v5e-Typen für das Training

Das Training wird für bis zu 256 Chips unterstützt.

Wenn Sie TPUs für einen v5e-Trainingsjob bereitstellen möchten, verwenden Sie in Ihrer CLI- oder API-Anfrage zum Erstellen von TPUs einen der folgenden Beschleunigertypen:

AcceleratorType (TPU API) Maschinentyp (GKE API) Topologie
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

Vergleich der VM-Typen für TPU v5e:

VM-Typ n2d-48-24-v5lite-tpu n2d-192-112-v5lite-tpu n2d-384-224-v5lite-tpu
Anzahl der v5e-Chips 1 4 8
Anzahl der vCPUs 24 112 224
RAM (GB) 48 192 384
Anzahl der NUMA-Knoten 1 1 2
Gilt für v5litepod-1 v5litepod-4 v5litepod-8
Unterbrechung Hoch Mittel Niedrig

Um Platz für Arbeitslasten zu schaffen, die mehr Chips erfordern, können Scheduler VMs mit weniger Chips vorzeitig beenden. 8-Chip-VMs präemptive 1- und 4-Chip-VMs also.