In diesem Dokument werden die Compute Engine-Instanzen in der beschleunigungsoptimierten Maschinenfamilie beschrieben, die Tensor Processing Units (TPUs) haben. TPUs sind von Google speziell entwickelte anwendungsspezifische integrierte Schaltungen (Application-Specific Integrated Circuits, ASICs), die speziell für Arbeitslasten im Bereich künstliche Intelligenz (KI) und maschinelles Lernen (ML) optimiert sind.
Compute Engine unterstützt die folgenden TPU-Versionen:
- TPU7x
- TPU v6e
- TPU v5p
Jeder Maschinentyp innerhalb einer Version hat eine bestimmte Topologie und eine bestimmte Anzahl von angehängten TPU-Chips.
Grundlagen der TPU-Architektur
Wenn Sie die Grundlagen der TPU-Architektur kennen, können Sie die TPU-Version und den Maschinentyp für Ihre Arbeitslast besser auswählen.
TPU-Chip: Ein TPU-Chip ist ein von Google entwickelter spezieller Beschleuniger für maschinelles Lernen. Jeder TPU-Chip enthält einen oder mehrere TensorCores, um umfangreiche Matrixoperationen zu verarbeiten. Jeder TensorCore besteht aus einer oder mehreren Matrixmultiplikationseinheiten (MXUs), die eine systolische Arrayarchitektur verwenden, um Tausende von Multiplikations- und Akkumulationsvorgängen pro Zyklus ohne ständigen Speicherzugriff auszuführen. Der TPU-Chip wird zwar hauptsächlich für die schnelle Matrixverarbeitung verwendet, enthält aber auch Vektor- und Skalareinheiten für allgemeine Berechnungs- und Ablaufsteuerungsvorgänge.
TPU-Pod: Ein TPU-Pod ist eine zusammenhängende Gruppe von TPUs, die über ein spezielles Netzwerk verbunden sind. Die Anzahl der TPU-Chips in einem TPU-Pod hängt von der TPU-Version ab.
TPU-VM: Eine TPU-VM ist eine Linux-VM, die auf einem TPU-Host ausgeführt wird und Zugriff auf die zugrunde liegenden TPUs hat. Sie können über SSH eine direkte Verbindung zu TPU-VMs herstellen. Sie haben Root-Zugriff auf die VM und können so beliebigen Code ausführen. Sie können auf Compiler- und Laufzeit-Debug-Logs sowie auf Fehlermeldungen zugreifen.
TPU-Slice: Eine logische Gruppe miteinander verbundener TPU-Chips, auf die über eine oder mehrere TPU-VMs zugegriffen wird. Slices haben einen der folgenden Bereiche:
- Single-Host-Slice: Ein Slice, der aus einem Hostcomputer besteht. Im Allgemeinen entspricht das einer TPU-VM.
- Slice mit mehreren Hosts: Ein Slice, der aus mehreren TPU-VMs besteht, die über ein Inter-Chip-Interconnect (ICI) mit hoher Geschwindigkeit miteinander verbunden sind.
TPU-Cube: Eine 4 × 4 × 4-Topologie miteinander verbundener TPU-Chips. Dies gilt nur für 3D-Topologien.
SparseCore: SparseCores sind Dataflow-Prozessoren, die Modelle mit dünnbesetzten Operationen beschleunigen. Ein primärer Anwendungsfall ist die Beschleunigung von Empfehlungsmodellen, die stark auf Einbettungen basieren.
TPU-Versionen: Die genaue Architektur eines TPU-Chips hängt von der verwendeten TPU-Version ab. Jede TPU-Version unterstützt auch unterschiedliche Slice-Größen und ‑Konfigurationen.
Informationen zur Funktionsweise von TPUs finden Sie in der Cloud TPU-Dokumentation unter TPU-Architektur.
Empfohlene TPU-Versionen nach Arbeitslasttyp
| TPU-Version | Primäre Arbeitslasttypen |
|---|---|
| TPU7x (Ironwood) |
|
| TPU v6e (Trillium) |
|
| TPU v5p |
|
Nutzungsoptionen
Um die Ressourcenauslastung und die Kosten zu optimieren und gleichzeitig die Arbeitslastleistung auszugleichen, unterstützt Compute Engine die folgenden Optionen für die TPU-Nutzung:
On-Demand: TPUs nutzen, ohne Kapazität im Voraus zu reservieren. Bevor Sie Ressourcen anfordern, müssen Sie ein ausreichendes On-Demand-Kontingent für den jeweiligen Typ und die jeweilige Anzahl von TPU-VMs haben. On-Demand ist die flexibelste Option. Es gibt jedoch keine Garantie dafür, dass genügend On-Demand-Ressourcen verfügbar sind, um Ihre Anfrage zu erfüllen.
Spot-VMs: Wenn Sie Spot-VMs bereitstellen, können Sie erhebliche Rabatte erhalten. Spot-VMs können jedoch jederzeit mit einer 30-sekündigen Warnung vorzeitig beendet werden. Weitere Informationen finden Sie unter Informationen zu Spot-VMs.
Flex-Start: Flex-Start-VMs werden für bis zu sieben Tage bereitgestellt. Compute Engine weist die Hardware automatisch nach dem Best-Effort-Prinzip basierend auf der Verfügbarkeit zu. Weitere Informationen finden Sie unter Flex-Start-VMs.
Vorausschauende Reservierung: Hiermit können Sie eine vorausschauende Reservierung für ein Jahr oder länger anfordern. Weitere Informationen finden Sie in der Cloud TPU-Dokumentation unter Vorausschauende Reservierung für ein Jahr oder länger anfordern.
Vorausschauende Reservierung im Kalendermodus: Damit können Sie TPU-Ressourcen für bis zu 90 Tage für einen bestimmten Zeitraum bereitstellen. Weitere Informationen finden Sie unter Anfragen für vorausschauende Reservierungen im Kalendermodus.
„On-Demand“ ist das Standard-Nutzungsmodell für TPUs, wenn Sie keine andere Option angeben.
Informationen zum zugrunde liegenden Bereitstellungsmodell, das die Verbrauchsoption ermöglicht, finden Sie unter VM-Bereitstellungsmodelle.
Verfügbarkeit von Nutzungsoptionen nach TPU-Versionen
In der folgenden Tabelle ist die Verfügbarkeit der einzelnen Verbrauchsoptionen nach TPU-Versionen zusammengefasst.
| TPU-Version | On demand | Spot | Flex-Start | On-Demand-Reservierungen | Vorausschauende Reservierungen | Vorausschauende Reservierungen im Kalendermodus1 |
|---|---|---|---|---|---|---|
| 2 | 2 | 2 | ||||
1 Wenn Sie den Modus „Alle Kapazitäten“ verwenden, können Sie keine Anfragen für vorausschauende Reservierungen im Kalendermodus erstellen.
2 Spot-, Flex-Start- und vorausschauende Reservierungen im Kalendermodus für TPU7x sind durch eine Zulassungsliste eingeschränkt. Wenn Sie Zugriff anfordern möchten, wenden Sie sich an Ihr Account-Management-Team oder das Vertriebsteam.
Modus „Gesamte Kapazität“
TPU-Reservierungen umfassen standardmäßig die automatische Fehlerbehebung.Cloud de Confiance verwaltet diesen Prozess, indem fehlerhafte TPU-Maschinen automatisch durch fehlerfreie Maschinen aus der reservierten Kapazität ersetzt werden. So wird dafür gesorgt, dass Ressourcen zum Neustarten Ihrer TPU-Slices verfügbar sind.
Alternativ können Sie für TPU v6e und TPU7x TPU-Kapazität im Modus „Alle Kapazitäten“ anfordern. In diesem Modus haben Sie Zugriff auf Ihre gesamte reservierte Kapazität und die gesamte Topologie. In diesem Modus können Sie auch bestimmte Blöcke oder Unterblöcke für eine präzise, topologiebewusste Platzierung von Arbeitslasten festlegen. Sie sind jedoch für die Verwaltung von Hardwarefehlern und die Wartung verantwortlich.
Weitere Informationen zu diesen Modi finden Sie in der Cloud TPU-Dokumentation unter TPU-Kapazitätsmodi.
Vergleich der TPU-Versionen
Vergleichen Sie die Eigenschaften verschiedener TPU-Versionen. Sie können bestimmte Attribute im Feld Attribute zum Vergleich auswählen auswählen, um sie für alle TPU-Versionen in der folgenden Tabelle zu vergleichen.
| Beschleunigungsoptimiert | Beschleunigungsoptimiert | Beschleunigungsoptimiert |
| VM | VM | VM |
| Intel Emerald Rapids | AMD EPYC Genoa | Intel Sapphire Rapids |
| x86 | x86 | x86 |
| 224 | 44 bis 180 | 208 |
| Thread | Thread | Thread |
| 960 GB | 176 bis 1440 GB | 448 GB |
| NUMA | NUMA | NUMA |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | |
| NVMe | NVMe | NVMe |
| — | ||
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | |
| — | — | — |
| — | — | — |
| gVNIC | gVNIC | gVNIC |
| 400 Gbit/s | 50 bis 400 Gbit/s | 200 Gbit/s |
| 4 | 8 | 4 |
| — | — | — |
| – | – | – |
TPU-Architekturspezifikationen
In der folgenden Tabelle sind die wichtigsten Spezifikationen für jede TPU-Version aufgeführt.
| Spezifikation | TPU7x | TPU v6e | TPU v5p |
|---|---|---|---|
| Anzahl der Chips pro Pod | 9216 | 256 | 8960 |
| Maximale Rechenleistung pro Chip (BF16) (TFLOPs) | 2307 | 918 | 459 |
| Maximale Rechenleistung pro Chip (FP8) (TFLOPs) | 4614 | 918 | 459 |
| HBM-Kapazität pro Chip (GiB) | 192 | 32 | 95 |
| HBM-Bandbreite pro Chip (GB/s) | 7380 | 1638 | 2765 |
| Anzahl der vCPUs (VM mit 4 Chips) | 224 | 180 | 208 |
| RAM (GiB) (VM mit 4 Chips) | 960 | 720 | 448 |
| Anzahl der TensorCores pro Chip | 2 | 1 | 2 |
| Anzahl der SparseCores pro Chip | 4 | 2 | 4 |
| Bidirektionale ICI-Bandbreite (Inter-Chip Interconnect) pro Chip (GBps) | 1.200 | 800 | 1.200 |
| Bandbreite des Rechenzentrumsnetzwerks (Data Center Network, DCN) pro Chip (Gbit/s) | 100 | 100 | 50 |
TPU-Maschinentypen
In den folgenden Abschnitten werden die für jede TPU-Version verfügbaren Maschinentypen beschrieben.
TPU7x (Ironwood)
Jede TPU7x-VM enthält 4 TPU-Chips. Für alle TPU7x-Slices werden Full-Host-VMs mit 4 Chips verwendet.
Jeder TPU7x-Chip enthält zwei TensorCores und vier SparseCores.
Mit dem Ironwood-Programmiermodell können Sie auf zwei TPU-Geräte zugreifen, anstatt auf eine einzelne logische Kernarchitektur, die in früheren Generationen verwendet wurde. Weitere Informationen finden Sie in der Cloud TPU-Dokumentation unter Dual-Chiplet-Architektur.
| Maschinentyp | Anzahl der vCPUs | Instanzarbeitsspeicher (GiB) | Anzahl der physischen NICs | Maximale Netzwerkbandbreite (Gbit/s) | Anzahl der TPU-Chips pro VM | Anzahl der NUMA-Knoten | Gesamter TPU-Arbeitsspeicher (GiB HBM) |
|---|---|---|---|---|---|---|---|
tpu7x-standard-4t |
224 | 960 | 2 | 400 | 4 | 2 | 768 |
Weitere Informationen zur TPU7x-Architektur finden Sie in der Cloud TPU-Dokumentation unter TPU7x (Ironwood).
TPU v6e (Trillium)
Jede TPU v6e-VM kann 1, 4 oder 8 TPU-Chips enthalten. Slices mit 4 oder weniger Chips haben denselben NUMA-Knoten (Non-Uniform Memory Access).
v6e-Slices werden mit Half-Host-VMs erstellt, die jeweils 4 TPU-Chips haben. Ausnahmen:
ct6e-standard-1tmit nur einem TPU-Chip ist hauptsächlich für Tests vorgesehen.ct6e-standard-8tist eine VM mit vollständigem Host, die für einen Inferenzanwendungsfall optimiert wurde. So können alle 8 TPU-Chips, die an eine einzelne VM angehängt sind, in einer einzelnen Bereitstellungsarbeitslast verwendet werden.
| Maschinentyp | Anzahl der vCPUs | Instanzarbeitsspeicher (GB) | Anzahl der physischen NICs | Maximale Netzwerkbandbreite (Gbit/s) | Anzahl der TPU-Chips pro VM | Anzahl der NUMA-Knoten | Gesamter TPU-Arbeitsspeicher (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 |
Weitere Informationen zur TPU v6e-Architektur finden Sie in der Cloud TPU-Dokumentation unter TPU v6e.
TPU v5p
Ein TPU v5p-Pod besteht aus 8.960 TPU-Chips, die über rekonfigurierbare Hochgeschwindigkeitsverbindungen miteinander verbunden sind. Die flexible Vernetzung von TPU v5p ermöglicht Ihnen, die TPU-Chips in einem Slice derselben Größe auf verschiedene Arten zu verbinden. Das Training mit einem einzelnen Slice wird für bis zu 6.144 TPU-Chips unterstützt.
| Maschinentyp | Anzahl der vCPUs | Instanzarbeitsspeicher (GB) | Anzahl der physischen NICs | Maximale Netzwerkbandbreite (Gbit/s) | Anzahl der TPU-Chips pro VM | Anzahl der NUMA-Knoten | Gesamter TPU-Arbeitsspeicher (GiB HBM) |
|---|---|---|---|---|---|---|---|
ct5p-hightpu-4t |
208 | 448 | 1 | 200 | 4 | 2 | 380 |
Weitere Informationen zur TPU v5p-Architektur finden Sie in der Cloud TPU-Dokumentation unter TPU v5p.
TPU-Topologie
Die Topologie definiert die physische Anordnung von TPUs in einem TPU-Slice. Je nach TPU-Version ist die Topologie zwei- oder dreidimensional. Sie können die Anzahl der TPU-Chips in einem Slice ermitteln, indem Sie das Produkt jeder Größe in der Topologie berechnen. Beispiel:
- Der Maschinentyp
tpu7x-standard-4tmit einer2x2x2-Topologie ist ein TPU7x-Slice mit mehreren Hosts und 8 Chips.
In der folgenden Tabelle sind die für jede TPU-Version verfügbaren Topologien aufgeführt.
| TPU-Version | Maschinentyp | Umfang | Technische Spezifikationen |
|---|---|---|---|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Einzelner Host |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
Mehrere Hosts |
|
| TPU v6e (Trillium) | ct6e-standard-1t |
Einzelner Host |
|
| TPU v6e (Trillium) | ct6e-standard-8t |
Einzelner Host |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
Einzelner Host |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
Mehrere Hosts |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
Mehrere Hosts |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
Mehrere Hosts |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
Mehrere Hosts |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
Mehrere Hosts |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
Mehrere Hosts |
|
| TPU v5p | ct5p-hightpu-4t |
Einzelner Host |
|
| TPU v5p | ct5p-hightpu-4t |
Mehrere Hosts |
|
| TPU v5p | ct5p-hightpu-4t |
Mehrere Hosts |
|
| TPU v5p | ct5p-hightpu-4t |
Mehrere Hosts |
|
| TPU v5p | ct5p-hightpu-4t |
Mehrere Hosts |
|
-
Berechnet sich aus dem Topologieprodukt geteilt durch vier. ↩
Nächste Schritte
- TPU-Ressourcen in Compute Engine
- Kurzanleitung: Einzelne TPU-VM erstellen