TPU v5e
In diesem Dokument werden die Architektur und die unterstützten Konfigurationen von Cloud TPU v5e beschrieben.
TPU v5e unterstützt das Training mit einzelnen und mehreren Hosts sowie die Inferenz mit einzelnen Hosts. Die Inferenz mit mehreren Hosts wird mit Sax unterstützt. Weitere Informationen finden Sie unter Cloud TPU-Inferenz.
Systemarchitektur
Jeder v5e-Chip enthält einen TensorCore. Jeder TensorCore hat vier MXUs (Matrix Multiply Units), eine Vektoreinheit und eine Skalareinheit.
Das folgende Diagramm zeigt einen TPU v5e-Chip.
In der folgenden Tabelle sind die wichtigsten Chipspezifikationen und ihre Werte für v5e aufgeführt.
Wichtige Chipspezifikationen | v5e-Werte |
---|---|
Maximale Rechenleistung pro Chip (bf16) | 197 TFLOPs |
HBM2-Kapazität und ‑Bandbreite | 16 GB, 819 GB/s |
Interchip-Interconnect-Bandbreite | 1.600 Gbit/s |
In der folgenden Tabelle sind die Podspezifikationen und ihre Werte für v5e aufgeführt.
Wichtige Podspezifikationen | v5e-Werte |
---|---|
TPU-Pod-Größe | 256 Chips |
Interconnect-Topologie | 2D-Torus |
Maximale Rechenleistung pro Pod | 100 PetaOps (Int8) |
All-Reduce-Bandbreite pro Pod | 51,2 TB/s |
Bisektionsbandbreite pro Pod | 1,6 TB/s |
Netzwerkbandbreite des Rechenzentrums pro Pod | 6,4 Tbit/s |
Konfigurationen
Cloud TPU v5e ist ein kombiniertes Produkt für Training und Inferenz (Bereitstellung). Um zwischen einer Trainings- und einer Inferenzumgebung zu unterscheiden, verwenden Sie den Parameter AcceleratorType
mit der TPU API oder das Flag --machine-type
beim Erstellen eines GKE-Knotenpools (Google Kubernetes Engine).
Trainingsjobs sind für Durchsatz und Verfügbarkeit optimiert, während Bereitstellungsjobs für eine niedrige Latenz optimiert sind. Ein Trainingsjob auf TPUs, die für die Bereitstellung zur Verfügung gestellt werden, kann eine geringere Verfügbarkeit haben. Ein Bereitstellungsjob, der auf für das Training zur Verfügung gestellten TPUs ausgeführt wird, kann eine höhere Latenz haben.
Mit AcceleratorType
geben Sie die Anzahl der TensorCores an, die Sie verwenden möchten.
Sie geben den AcceleratorType
an, wenn Sie eine TPU mit der gcloud CLI oder der Google Cloud Console erstellen. Der Wert, den Sie für AcceleratorType
angeben, ist ein String im Format v$VERSION_NUMBER-$CHIP_COUNT
.
Die folgenden 2D-Sliceformen werden für 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 |
VM-Typen
Jede TPU-VM in einem v5e-TPU-Slice enthält 1, 4 oder 8 Chips. In Slices mit vier oder weniger Chips teilen sich alle TPU-Chips denselben NUMA-Knoten (Non-Uniform Memory Access).
Bei v5e-TPU-VMs mit 8 Chips ist die CPU-TPU-Kommunikation innerhalb von NUMA-Partitionen effizienter. In der folgenden Abbildung ist die CPU0-Chip0
-Kommunikation beispielsweise schneller als die CPU0-Chip4
-Kommunikation.
In der folgenden Tabelle werden die TPU v5e-VM-Typen verglichen:
VM-Typ | Maschinentyp (GKE API) | Anzahl der vCPUs pro VM | RAM (GB) pro VM | Anzahl der NUMA-Knoten pro VM |
---|---|---|---|---|
VM mit einem Chip | ct5lp-hightpu-1t |
24 | 48 | 1 |
VM mit 4 Chips | ct5lp-hightpu-4t |
112 | 192 | 1 |
VM mit 8 Chips | ct5lp-hightpu-8t |
224 | 384 | 2 |
Cloud TPU v5e-Typen für die Bereitstellung
Das Bereitstellen auf einem einzelnen Host wird für bis zu 8 v5e-Chips unterstützt. Die folgenden Konfigurationen werden unterstützt: 1x1-, 2x2- und 2x4-Slices. Jeder Slice hat 1, 4 bzw. 8 Chips.
Wenn Sie TPUs für einen Bereitstellungsjob zur Verfügung stellen möchten, verwenden Sie einen der folgenden Beschleunigertypen in Ihrer CLI- oder API-TPU-Erstellungsanfrage:
Beschleunigertyp (TPU API) | Maschinentyp (GKE API) |
---|---|
v5litepod-1 |
ct5lp-hightpu-1t |
v5litepod-4 |
ct5lp-hightpu-4t |
v5litepod-8 |
ct5lp-hightpu-8t |
Mit dem folgenden Befehl wird ein v5e-TPU-Slice mit 8 v5e-Chips für die Bereitstellung erstellt:
$ gcloud compute tpus tpu-vm create your-tpu-name \ --zone=us-central1-a \ --accelerator-type=v5litepod-8 \ --version=v2-alpha-tpuv5-lite
Weitere Informationen zum Verwalten von TPUs finden Sie unter TPU-Ressourcen verwalten. Weitere Informationen zur Systemarchitektur von Cloud TPU finden Sie unter TPU-Architektur.
Die Bereitstellung auf mehr als 8 v5e-Chips, auch als Multihost-Bereitstellung bezeichnet, wird mit Sax unterstützt. Weitere Informationen finden Sie unter Cloud TPU-Inferenz.
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 einen der folgenden Beschleunigertypen in Ihrer CLI- oder API-TPU-Erstellungsanfrage:
Beschleunigertyp (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 |
Mit dem folgenden Befehl wird ein v5e-TPU-Slice mit 256 v5e-Chips für das Training erstellt:
$ gcloud compute tpus tpu-vm create your-tpu-name \ --zone=us-east5-a \ --accelerator-type=v5litepod-256 \ --version=v2-alpha-tpuv5-lite
Weitere Informationen zum Verwalten von TPUs finden Sie unter TPU-Ressourcen verwalten. Weitere Informationen zur Systemarchitektur von Cloud TPU finden Sie unter TPU-Architektur.