Zuletzt aktualisiert am 05.12.2025 6 Minuten Lesezeit

TPU

Eine TPU (Tensor Processing Unit) ist ein von Google entwickelter spezialisierter Chip (ASIC), der für die Beschleunigung von maschinellem Lernen und künstlicher Intelligenz optimiert ist. Im Gegensatz zu allgemeinen Prozessoren wie CPUs oder GPUs wurde die TPU gezielt für die Berechnungen entwickelt, die bei neuronalen Netzen und Deep Learning anfallen - insbesondere Matrixmultiplikationen.

TPUs kommen in Googles Cloud-Diensten und internen Systemen zum Einsatz, wo sie Dienste wie Google Translate, Google Fotos und die KI-Modelle der Gemini-Familie antreiben.

Geschichte und Entwicklung

Google begann die Entwicklung der TPU im Jahr 2013, als das Unternehmen erkannte, dass die bestehende Hardware-Infrastruktur nicht ausreichen würde, wenn Nutzer täglich nur drei Minuten Spracherkennung nutzen würden. Die erste Generation wurde 2015 intern eingesetzt und 2016 öffentlich vorgestellt.

Wichtige Meilensteine

  • 2013: Google startet die TPU-Entwicklung
  • 2015: TPU v1 wird intern eingesetzt
  • 2016: Oeffentliche Ankündigung der TPU
  • 2017: TPU v2 mit erhöhter Rechenleistung für Training
  • 2018: TPU v3 mit Flüssigkeitskühlung
  • 2020: TPU v4 mit 3D-Mesh-Architektur
  • 2023: TPU v5e für kosteneffizientes Training
  • 2024: TPU v6 (Trillium) mit verbesserter Energieeffizienz
  • 2025: TPU v7 (Ironwood) für Inferenz optimiert

Architektur einer TPU

Die TPU-Architektur unterscheidet sich fundamental von herkömmlichen Prozessoren. Im Zentrum steht eine Matrix Multiply Unit (MXU), die als systolisches Array aufgebaut ist. Dieses Array kann Matrixmultiplikationen extrem effizient durchführen, indem Daten in einer Wellenbewegung durch das Array fließen.

Kernkomponenten

  • Matrix Multiply Unit (MXU): Das Herzstück - ein systolisches Array für Matrixoperationen
  • Unified Buffer: Schneller On-Chip-Speicher für Zwischenergebnisse
  • Activation Unit: Berechnung von Aktivierungsfunktionen wie ReLU oder Sigmoid
  • HBM (High Bandwidth Memory): Externer Speicher mit sehr hoher Bandbreite
  • Interconnect: Chip-zu-Chip-Verbindung für große Pod-Konfigurationen

Systolisches Array

Ein systolisches Array ist eine spezielle Anordnung von Recheneinheiten, bei der Daten rhythmisch von Zelle zu Zelle weitergereicht werden - ähnlich dem Herzschlag (daher der Name "systolisch"). Bei der TPU ermöglicht dies, dass eine Matrix-Matrix-Multiplikation mit minimaler Datenbewegung und maximalem Durchsatz durchgeführt wird.

Einfaches Beispiel eines 3x3 systolischen Arrays:

    A1 --> A2 --> A3 -->
     |      |      |
     v      v      v
    B1 --> B2 --> B3 -->
     |      |      |
     v      v      v
    C1 --> C2 --> C3 -->

Daten fließen horizontal (Matrix A) und vertikal (Matrix B)
Jede Zelle führt eine Multiply-Accumulate-Operation durch

TPU-Generationen im Vergleich

Google hat ueber die Jahre mehrere TPU-Generationen entwickelt, wobei jede Generation signifikante Verbesserungen brachte:

Generation Rechenleistung Speicher Bandbreite Hauptzweck
TPU v1 92 TOPS (INT8) 8 GB DDR3 34 GB/s Inferenz
TPU v2 45 TFLOPS (FP16) 16 GB HBM 600 GB/s Training & Inferenz
TPU v3 105 TFLOPS (FP16) 32 GB HBM 900 GB/s Training (flüssigkeitsgekühlt)
TPU v4 275 TFLOPS (BF16) 32 GB HBM2 1.2 TB/s Großes Training
TPU v5e 393 TOPS (INT8) HBM ~900 GB/s Kosteneffizient
TPU v6 ~5x v5e 2x v5e ~2x v5e Energieeffizientes LLM-Training
TPU v7 4.600 TFLOPS (FP8) 192 GB HBM3e 7.4 TB/s Inferenz für große Modelle

TPU vs. GPU: Der Vergleich

Im Bereich des maschinellen Lernens werden oft TPUs und GPUs verglichen. Beide haben ihre Stärken:

Aspekt TPU GPU
Architektur ASIC mit systolischem Array Tausende programmierbare CUDA-Kerne
Optimierung Speziell für Matrixoperationen Allzweck-Parallelverarbeitung
Energieeffizienz 2-3x besser pro Watt Höher bei gemischten Workloads
Flexibilität Begrenzt auf ML-Workloads Vielseitig einsetzbar
Framework-Support TensorFlow, JAX PyTorch, TensorFlow, CUDA
Verfügbarkeit Google Cloud Breit verfügbar
Kosten/Leistung 1.2-1.7x besser bei ML Besser bei gemischten Workloads

Fuer reine Deep-Learning-Workloads, insbesondere bei der Arbeit mit TensorFlow oder JAX, bieten TPUs oft bessere Leistung pro Dollar. GPUs sind hingegen flexibler und unterstützen ein breiteres Framework-Ökosystem, insbesondere PyTorch.

Einsatzgebiete von TPUs

TPUs werden für verschiedene KI-Anwendungen eingesetzt:

Training großer Modelle

TPU-Pods - Cluster aus Tausenden von TPUs - ermöglichen das Training von Modellen mit Milliarden von Parametern. Googles eigene Sprachmodelle wie Gemini, PaLM und BERT wurden auf TPU-Pods trainiert. Die v4-Pods können bis zu 4.096 Chips verbinden und erreichen Exaflop-Skala.

Inferenz im Produktivbetrieb

Fuer die produktive Anwendung trainierter Modelle bieten TPUs niedrige Latenz und hohen Durchsatz. Die neueste Generation (TPU v7 "Ironwood") ist speziell für Inferenz optimiert und bietet mit 192 GB Speicher ausreichend Platz für große KV-Caches bei Sprachmodellen.

Typische Anwendungsfälle

  • Natürliche Sprachverarbeitung (NLP): Übersetzung, Textgenerierung, Chatbots
  • Computer Vision: Bilderkennung, Objektdetektion, Videoanalyse
  • Empfehlungssysteme: Personalisierte Inhalte bei YouTube, Google Search
  • Wissenschaftliche Forschung: Proteinstrukturvorhersage (AlphaFold), Klimamodelle
  • Generative KI: Text-zu-Bild, Large Language Models (LLMs)

TPUs in Google Cloud nutzen

TPUs sind ueber Google Cloud verfügbar. Du kannst sie für Machine-Learning-Projekte nutzen, ohne eigene Hardware anschaffen zu müssen.

# Beispiel: TensorFlow mit TPU verwenden
import tensorflow as tf

# TPU-Cluster initialisieren
resolver = tf.distribute.cluster_resolver.TPUClusterResolver()
tf.config.experimental_connect_to_cluster(resolver)
tf.tpu.experimental.initialize_tpu_system(resolver)

# Verteilte Strategie für TPU
strategy = tf.distribute.TPUStrategy(resolver)

# Modell innerhalb der Strategie definieren
with strategy.scope():
    model = tf.keras.Sequential([
        tf.keras.layers.Dense(128, activation='relu'),
        tf.keras.layers.Dense(10, activation='softmax')
    ])
    model.compile(
        optimizer='adam',
        loss='sparse_categorical_crossentropy',
        metrics=['accuracy']
    )

Alternativ unterstuetzt auch JAX, Googles numerische Bibliothek, TPUs nativ und wird für viele aktuelle Forschungsprojekte bevorzugt.

Relevanz für die IT-Ausbildung

Fuer IT-Auszubildende ist das Verständnis von TPUs aus mehreren Gründen relevant:

  • Grundlagenwissen: TPUs verdeutlichen, wie spezialisierte Hardware für bestimmte Aufgaben optimiert werden kann - ein Prinzip, das auch bei anderen ASICs wie Netzwerk-Switches oder Kryptographie-Chips gilt
  • Cloud Computing: Als Fachinformatiker für Systemintegration wirst du mit Cloud-Infrastrukturen arbeiten, die zunehmend KI-Beschleuniger anbieten
  • Anwendungsentwicklung: Fachinformatiker für Anwendungsentwicklung sollten verstehen, welche Hardware-Optionen für ML-Anwendungen existieren
  • Zukunftstechnologie: KI und maschinelles Lernen werden in immer mehr IT-Bereichen relevant

Auch wenn du in der Ausbildung nicht direkt mit TPUs arbeiten wirst, hilft das Konzept spezialisierter KI-Hardware, die aktuelle Entwicklung im Cloud-Computing und bei KI-Diensten besser einzuordnen.

Verwandte Begriffe

  • GPU (Graphics Processing Unit): Allzweck-Beschleuniger, der auch für ML genutzt wird
  • ASIC (Application-Specific Integrated Circuit): Speziell für eine Aufgabe entwickelter Chip
  • FPGA (Field-Programmable Gate Array): Programmierbarer Chip für spezifische Aufgaben
  • Neuronales Netz: Mathematisches Modell, das TPUs beschleunigen
  • Deep Learning: Teilbereich des maschinellen Lernens mit tiefen neuronalen Netzen
  • TensorFlow: Googles Open-Source-Framework für maschinelles Lernen

Quellen und weiterführende Links