In den ersten beiden Teilen dieser Serie haben wir neuronale Netze und Sprachmodelle kennengelernt. Jetzt schauen wir uns an, wie Google mit der TPU eine Hardware entwickelt hat, die genau diese Operationen maximal effizient ausführt.
Die Tensor Processing Unit (TPU) ist Googles Antwort auf die wachsenden Rechenanforderungen moderner KI-Systeme. Während GPUs und CPUs als Allzweck-Prozessoren konzipiert wurden, ist die TPU von Grund auf für eine einzige Aufgabe optimiert: Tensor-Operationen, wie sie in neuronalen Netzen massenhaft vorkommen.
Das Grundproblem: Warum neue Hardware?
Wie im ersten Teil beschrieben, bestehen neuronale Netze im Kern aus zwei Operationen:
- Matrix-Multiplikationen: Gewichte werden mit Eingabewerten multipliziert
- Aktivierungsfunktionen: Nicht-lineare Transformationen der Ergebnisse
Eine typische Inferenz eines großen Sprachmodells erfordert Billionen dieser Operationen. CPUs und selbst GPUs stoßen hier an architekturelle Grenzen – nicht weil sie zu langsam rechnen, sondern weil sie zu viel Zeit damit verbringen, Daten zu bewegen.
Das Memory-Bandwidth-Problem
Der eigentliche Flaschenhals moderner KI ist nicht die Rechenleistung, sondern der Datentransfer:
- CPU: Lädt Daten aus dem RAM, verarbeitet sie, schreibt zurück
- GPU: Schneller, aber immer noch: Daten rein, rechnen, Daten raus
- TPU: Hält Daten so lange wie möglich in der Nähe der Recheneinheiten
Dieses Prinzip – Daten zur Berechnung bringen statt umgekehrt – ist das zentrale Designziel der TPU-Architektur.
Die TPU-Architektur im Detail
Systolic Array: Das Herzstück
Das revolutionäre Element der TPU ist das Systolic Array – eine zweidimensionale Anordnung von Recheneinheiten (Processing Elements, PEs), durch die Daten wie Blut durch Arterien „pulsieren”.
Eingabedaten fließen horizontal →
↓ ↓ ↓ ↓ ↓
[PE][PE][PE][PE][PE] ← Gewichte fließen vertikal
[PE][PE][PE][PE][PE]
[PE][PE][PE][PE][PE]
[PE][PE][PE][PE][PE]
↓ ↓ ↓ ↓ ↓
Ergebnisse sammeln sich unten
Funktionsprinzip:
- Gewichte werden einmal in die PEs geladen und bleiben dort
- Eingabedaten fließen horizontal durch das Array
- Jede PE führt eine Multiply-Accumulate-Operation (MAC) aus
- Ergebnisse propagieren nach unten zum nächsten Takt
Der entscheidende Vorteil: Jedes Datenelement wird einmal geladen und mehrfach verwendet. Bei einem 256×256 Systolic Array (wie in TPU v1) bedeutet das: 65.536 MACs pro Taktzyklus mit minimaler Speicherbandbreite.
Reduzierte Präzision: Weniger ist mehr
TPUs arbeiten standardmäßig mit reduzierter numerischer Präzision:
| Präzision | Bits | Typischer Einsatz |
|---|---|---|
| FP32 | 32 | Training (klassisch) |
| FP16 | 16 | Training (modern) |
| BF16 | 16 | TPU-Training (Brain Float) |
| INT8 | 8 | TPU-Inferenz |
Brain Float 16 (BF16) ist eine Google-Erfindung: gleicher Exponent wie FP32 (8 Bit), aber nur 7 Bit Mantisse statt 23. Das erhält den dynamischen Bereich bei halbiertem Speicherbedarf – ideal für Gradientenberechnungen beim Training.
Für Inferenz reichen oft 8-Bit-Integer (INT8). Die TPU kann damit die vierfache Anzahl an Operationen pro Sekunde ausführen verglichen mit FP32.
High Bandwidth Memory (HBM)
TPUs nutzen HBM – gestapelte Speicherchips, die direkt auf dem Package sitzen:
- TPU v4: 32 GB HBM2e mit ~1,2 TB/s Bandbreite
- TPU v5e: 16 GB HBM2e
- TPU v5p: 95 GB HBM2e mit ~2,7 TB/s
Zum Vergleich: DDR5-RAM erreicht etwa 50 GB/s, eine NVIDIA H100 etwa 3,35 TB/s. Die Speicherbandbreite ist der kritische Faktor für große Modelle.
Interconnect: TPUs im Verbund
Einzelne TPUs sind stark, aber die wahre Leistung entsteht im Verbund. Google verbindet TPUs über ein proprietäres Inter-Chip Interconnect (ICI):
- Direkte Chip-zu-Chip-Verbindung ohne Umweg über Host-CPU
- 3D-Torus-Topologie: Jeder Chip mit 6 Nachbarn verbunden
- Bandbreite: ~400 Gbit/s pro Link
Ein TPU v4-Pod besteht aus 4.096 Chips mit einer Gesamtleistung von über 1 ExaFLOP (FP8). Die Pods sind so konzipiert, dass Modelle nahtlos über tausende Chips verteilt werden können.
Architekturvergleich: TPU vs. GPU vs. CPU
CPU (x86/ARM): Der Generalist
Moderne CPUs wie Apples M-Serie oder Intel Core sind für sequentielle Aufgaben mit komplexer Kontrolllogik optimiert:
Architekturmerkmale:
- Wenige, aber sehr leistungsfähige Kerne (8-24 typisch)
- Große Caches (L1/L2/L3) für geringe Latenz
- Out-of-Order Execution, Branch Prediction, Speculative Execution
- Optimiert für geringe Latenz einzelner Operationen
Stärken:
- Exzellent für Code mit vielen Verzweigungen
- Niedrige Latenz für einzelne Aufgaben
- Breite Software-Kompatibilität
Schwächen für KI:
- Wenige parallele Recheneinheiten
- Hoher Energieverbrauch pro Operation
- Speicherbandbreite begrenzt
GPU (NVIDIA): Der Parallelist
GPUs wie NVIDIAs H100 stammen aus der Grafikberechnung, wo Millionen Pixel parallel berechnet werden:
Architekturmerkmale:
- Tausende kleine Kerne (z.B. 16.896 CUDA-Cores in H100)
- SIMT-Architektur (Single Instruction, Multiple Threads)
- Tensor Cores für Matrix-Operationen (seit Volta)
- Große Speicherbandbreite (HBM)
Stärken:
- Massive Parallelität
- Flexibel programmierbar (CUDA)
- Gute Balance Training/Inferenz
- Breites Ökosystem (PyTorch, TensorFlow)
Schwächen:
- Hoher Energieverbrauch
- Tensor Cores sind „aufgepfropft”, nicht grundlegend
- Teuer (H100: ~30.000€+)
TPU: Der Spezialist
Architekturmerkmale:
- Systolic Array als Kernkomponente
- Minimale Kontrolllogik
- On-Chip-Speicher für Gewichte
- Optimiert für deterministische Workloads
Stärken:
- Höchste Effizienz für Matrix-Operationen
- Geringerer Energieverbrauch pro Operation
- Skaliert linear über tausende Chips
- Optimiert für TensorFlow/JAX
Schwächen:
- Nur über Google Cloud verfügbar
- Eingeschränkte Flexibilität
- Weniger geeignet für Forschung mit Custom Ops
- Begrenzte Framework-Unterstützung
Apples M-Serie: Der integrierte Ansatz
Apples M1/M2/M3/M4-Chips verfolgen einen anderen Weg: Integration statt Spezialisierung.
Unified Memory Architecture (UMA)
Der revolutionäre Aspekt der M-Serie ist nicht die Neural Engine, sondern das Unified Memory:
- CPU, GPU und Neural Engine teilen sich denselben Speicher
- Kein Kopieren von Daten zwischen Komponenten
- Bandbreite: ~400 GB/s (M3 Max)
Für KI-Inferenz auf dem Gerät ist das ideal: Ein Modell liegt einmal im Speicher und kann von allen Einheiten genutzt werden.
Neural Engine
Die Neural Engine in M-Chips ist eine TPU im Kleinen:
- 16-38 Kerne (je nach Chip)
- Optimiert für INT8/FP16-Operationen
- ~35 TOPS (M3 Max)
Verglichen mit Cloud-TPUs ist das bescheiden, aber für On-Device-Inferenz (Siri, Fotos, etc.) mehr als ausreichend.
Vergleich der Ansätze
| Aspekt | TPU | NVIDIA GPU | Apple M-Serie |
|---|---|---|---|
| Primärziel | Cloud-KI-Training | Flexibles Compute | On-Device-Effizienz |
| Speicher | HBM (dediziert) | HBM (dediziert) | Unified (geteilt) |
| Programmierung | TensorFlow/JAX | CUDA/Alles | Core ML |
| Verfügbarkeit | Google Cloud only | Kaufbar | Apple-Geräte |
| Typische Leistung | ~275 TFLOPS (v4) | ~1.979 TFLOPS (H100) | ~35 TOPS (M3 Max) |
| Energieeffizienz | Sehr hoch | Mittel | Exzellent |
Die Architektur-Philosophien im Vergleich
TPU: Determinismus über alles
Die TPU-Architektur basiert auf einer radikalen Annahme: KI-Workloads sind vorhersagbar. Die Berechnung eines neuronalen Netzes folgt immer demselben Muster – keine Verzweigungen, keine Sprünge, keine Überraschungen.
Daraus folgt:
- Keine Branch Prediction nötig
- Keine Out-of-Order Execution
- Keine spekulative Ausführung
- Minimale Kontrolllogik
Alles, was eine CPU kompliziert macht, wird weggelassen. Das Ergebnis: maximale Effizienz für einen eng definierten Anwendungsfall.
GPU: Flexibilität als Prinzip
NVIDIAs Ansatz ist pragmatischer: GPUs können fast alles, KI ist nur ein Anwendungsfall. Die Tensor Cores sind eine Ergänzung der bestehenden Architektur, kein Neudesign.
Das erklärt die Dominanz im Markt:
- Forscher können beliebige Operationen implementieren
- Dasselbe Hardware für Training, Inferenz, Simulation, Rendering
- Ausgereiftes Software-Ökosystem
Apple: Integration statt Maximierung
Apple optimiert für einen anderen Zielmarkt: Geräte, die Nutzer in der Hand halten. Hier zählt Energieeffizienz mehr als rohe Rechenleistung.
Die Unified Memory Architecture ist dafür ideal:
- Kein Energie für Datenkopien
- Kleine, effiziente Neural Engine
- Gute-genug-Performance für Consumer-KI
Welche Architektur für welchen Einsatz?
Großes Modelltraining
Empfehlung: TPU (Google Cloud) oder GPU (NVIDIA H100)
Für das Training von Modellen mit Milliarden Parametern führt kein Weg an spezialisierter Hardware vorbei. TPUs bieten die beste Effizienz, wenn das Modell in TensorFlow/JAX implementiert ist. GPUs sind flexibler und haben das breitere Ökosystem.
Inferenz in der Cloud
Empfehlung: TPU v5e oder GPU (je nach Latenzanforderung)
Für Batch-Inferenz (viele Anfragen gleichzeitig) sind TPUs optimal. Für Echtzeit-Inferenz mit strengen Latenzanforderungen können GPUs besser sein, da sie flexibler schedulen.
On-Device KI
Empfehlung: Apple Neural Engine oder spezialisierte NPUs
Für KI auf Smartphones, Laptops oder eingebetteten Systemen sind integrierte Lösungen wie Apples M-Serie oder Qualcomms NPUs die richtige Wahl. Sie bieten die beste Balance aus Leistung und Energieeffizienz.
Forschung und Experimente
Empfehlung: NVIDIA GPU
Für Forschung, wo Custom Operators und flexible Frameworks wichtig sind, bleibt die GPU die beste Wahl. Das CUDA-Ökosystem ist unübertroffen in seiner Flexibilität.
Die Zukunft der KI-Hardware
Die Grenzen zwischen den Architekturen verschwimmen zunehmend:
- NVIDIA integriert immer mehr TPU-ähnliche Strukturen (Transformer Engine in Hopper)
- Google macht TPUs flexibler (PyTorch-Unterstützung via XLA)
- Apple skaliert die Neural Engine kontinuierlich
- Neue Player wie Cerebras (Wafer-Scale) und Groq (LPU) bringen völlig neue Ansätze
Die TPU bleibt ein faszinierendes Beispiel dafür, wie radikal spezialisierte Hardware aussehen kann – und warum manchmal weniger (Funktionalität) mehr (Effizienz) bedeutet.