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.
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.
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.
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.