Der Vortrag von Rabimbo (PayPal AI Lab und Google Developer Expert) analysiert einen rigorosen, praxisnahen Benchmark zum Vergleich von LLM-Inference-Workloads (Large Language Models) auf GPUs (CUDA auf acht RTX 6000 Karten über PCIe Gen 5) versus TPUs (OpenXLA, V5E/V6E via MaxText) im Jahr 2026. Ziel war es, die Diskrepanz zwischen irreführenden öffentlichen Benchmarks ("Äpfel-mit-Birnen-Vergleiche") und tatsächlichen Produktionsanforderungen zu überwinden. Durch die Verwendung eines einheitlichen OpenAI-kompatiblen Streaming-Clients wurden Modellarchitektur (Llama 3.1 8B und 70B in BF16) und Request-Mix konstant gehalten. Die Untersuchung zeigt, dass der rohe Token-Durchsatz (Throughput) trügerisch ist und stattdessen Goodput (Anfragen pro Sekunde im Rahmen definierter Service Level Objectives, SLOs) als primäre Metrik herangezogen werden muss, insbesondere bei der Berücksichtigung von P99-Latenzen und TPU-Kompilierungskosten.
Wichtigste Punkte & Zeitstempel
0:00 Motivation & Problemstellung: Ziel des Benchmarks war es, objektive Daten für die Entscheidung zu gewinnen, ob LLM-Serving von GPUs auf TPUs migriert werden sollte, da öffentliche Vergleiche zu stark variieren und nicht reproduzierbar sind.
1:51 Hardware-Setup & Tech-Stack: Fokus auf RTX 6000 GPUs (über PCIe Gen 5, ohne NVLink) im Vergleich zu TPU v5e/v6e unter Verwendung von VLLM, OpenXLA und MaxText für Llama 3.1 (8B und 70B Parameter in BF16).
4:34 Service Level Objectives (SLOs) & Metriken: Definition von Latenz- und Kapazitätsmetriken: Time to First Token (TTFT) für die Responsivität und Time Per Output Token (TPOT) für die Streaming-Geschwindigkeit unter Berücksichtigung von Lastgrenzen.
8:34 Die Tücke öffentlicher Benchmarks: Öffentliche Zahlen messen oft nur den Peak-Durchsatz bei isolierten, künstlichen Sequenzlängen ohne Berücksichtigung von Kaltstarts, Präzision, Client-Typen oder realistischen Request-Mixes.
10:14 Kontrollierter Benchmark-Aufbau: Um eine faire Vergleichbarkeit zu gewährleisten, wurde ein einziger OpenAI-kompatibler Streaming-Client genutzt, während sich nur das Backend (VLLM-CUDA vs. TPU-Backends) änderte.
13:03 Vier Kernmetriken: Unterscheidung zwischen Latenz (TTFT, TPOT) und Kapazität (Roher Durchsatz vs. Goodput, wobei Goodput nur Anfragen zählt, die streng die definierten SLOs einhalten).
16:05 Workload-Formen: Analyse von Prefill-lastigen Workloads (langer Prompt, kurze Antwort, rechenintensiv) und Decode-lastigen Workloads (kurzer Prompt, lange Antwort, speicherbandbreitenintensiv).
18:31 TPU-Kompilierung & Kaltstart: Erklärung der statischen OpenXLA-Kompilierung auf TPUs, die für dynamische Serving-Längen vordefinierte Tensor-Shape-Buckets und zeitaufwändige Kaltstartphasen (bis zu 20–30 Minuten, ca. 5 Minuten aus dem Cache) erfordert.
21:28 Benchmark-Ergebnisse (Durchsatz vs. Latenz): Das 8B-Modell läuft stabil innerhalb der SLOs (P99: 33–88 ms). Das 70B-Modell auf mehreren GPUs ohne NVLink zeigt jedoch explodierende P99-Latenzen (bis zu 462 ms), was zu einem massiven Einbruch des Goodputs führt.
25:08 Wichtigste Erkenntnisse: Das Festhalten an fixen Clients, einheitlichen SLOs und der Metrik Goodput offenbart Leistungsschwächen in der Skalierbarkeit, die reiner Durchsatz verschleiern würde.
Glossar
LLM (Large Language Model): Ein auf maschinellem Lernen basierendes Sprachmodell, das darauf trainiert ist, menschliche Sprache zu verstehen und zu generieren.
TPU (Tensor Processing Unit): Ein von Google entwickelter, spezialisierter ASIC (anwendungsspezifischer integrierter Schaltkreis) zur Beschleunigung von Workloads im Bereich des maschinellen Lernens.
GPU (Graphics Processing Unit): Ein Grafikprozessor, der dank paralleler Rechenarchitektur universell für rechenintensive Aufgaben, insbesondere KI-Training und -Inference, eingesetzt wird.
CUDA: Eine von NVIDIA entwickelte Plattform und Programmierschnittstelle (API) zur Nutzung von GPUs für allgemeine Berechnungen und paralleles Rechnen.
OpenXLA: Ein Open-Source-Compiler und Optimierungsframework für maschinelles Lernen, das rechenintensive Modelle für Hardware-Beschleuniger wie TPUs und GPUs optimiert.
VLLM: Eine populäre, hochoptimierte Open-Source-Software-Engine zum schnellen und speichereffizienten Serving von Large Language Models.
TTFT (Time to First Token): Die Latenzzeit, die von der Anfrage eines Nutzers bis zur Generierung des allerersten Tokens durch das Modell vergeht (wesentliches Maß für die gefühlte Responsivität).
TPOT (Time Per Output Token): Die Zeit, die für die Generierung jedes weiteren Tokens während des Streaming-Prozesses benötigt wird (Maß für die kontinuierliche Ausgabegeschwindigkeit).
SLO (Service Level Objective): Ein präzise definiertes Leistungsziel oder qualitativer Standard (z. B. maximale Antwortlatenz), den ein System im Betrieb einhalten muss.
Goodput: Die Anzahl nutzbarer, erfolgreicher Anfragen pro Sekunde, die alle definierten SLOs (wie Latenzgrenzen) einhalten – im Gegensatz zum reinen Gesamtdurchsatz.
Throughput (Durchsatz): Die Gesamtzahl der verarbeiteten Tokens oder Anfragen pro Sekunde, unabhängig davon, ob vereinbarte Latenzziele (SLOs) verletzt wurden.
P99 (99. Perzentil): Ein statistischer Wert, der aussagt, dass 99 % aller gemessenen Anfragen schneller oder gleich dieses Wertes waren; dient zur Messung von Verzögerungen im Extrembereich (Tail Latency).
Prefill: Die rechenintensive Phase am Anfang der Inferenz, in der das gesamte Eingabedokument (der Prompt) parallel verarbeitet wird.
Decode: Die sequenzielle Phase der Inferenz, in der Token für Token generiert wird; stark abhängig von der verfügbaren Speicherbandbreite.
PCIe (Peripheral Component Interconnect Express): Ein serieller Computerbus-Standard zur Verbindung von Hardware-Komponenten (wie GPUs oder Netzwerkkarten) mit dem Motherboard.
NVLink: Eine proprietäre Hochgeschwindigkeits-Verbindungstechnologie von NVIDIA für die direkte, verlustarme Kommunikation zwischen mehreren GPUs.
BF16 (Bfloat16): Ein 16-Bit-Gleitkommaformat, das häufig im Deep Learning verwendet wird, um den Speicherbedarf zu halbieren, während der dynamische Bereich erhalten bleibt.
MaxText: Ein hochperformantes, auf JAX basierendes Open-Source-Textmodellierungsframework von Google für das Training und Serving von LLMs auf TPUs.