Ein praktischer Leitfaden zur LLM-Inferenz-Mathematik: Von der Theorie zur Hardware

Large Language Models (LLMs) sind zu einer grundlegenden Technologie in der modernen KI geworden, aber ihr effizienter Betrieb erfordert ein tiefes VerstÀndnis des Zusammenspiels zwischen Modellarchitektur und HardwarefÀhigkeiten. Es ist nicht immer die kosteneffizienteste Lösung, einfach die leistungsstÀrkste GPU auszuwÀhlen. Entscheidend ist, ob Ihr Workload compute-bound oder memory-bound ist.

Dieser Leitfaden fĂŒhrt Sie durch die wesentlichen mathematischen Grundlagen, um ein LLM fĂŒr Inferenz zu profilieren, damit Sie die richtige Hardware auswĂ€hlen und deren Leistung optimieren können. Wir wenden diese Prinzipien auf ein Praxisbeispiel an: den Betrieb des Qwen/Qwen3-VL-32B-Instruct Modells auf der leistungsstarken NVIDIA RTX PRO 6000 Blackwell Edition Workstation-GPU.

Dieser Artikel ist inspiriert von dem mathematischen Ansatz, der im Baseten Blogbeitrag "A guide to LLM inference and performance." beschrieben wird.

Schritt 1: Verstehen Sie die FĂ€higkeiten Ihrer Hardware

Der erste Schritt besteht darin, die wichtigsten Spezifikationen unserer GPU zu analysieren. Diese Zahlen definieren die theoretischen Grenzen unserer Hardware. FĂŒr die NVIDIA RTX PRO 6000 Blackwell Edition sind die entscheidenden Spezifikationen:

  • GPU Speicher (VRAM): 96 GB GDDR7 ECC 1
  • GPU Speicherbandbreite: 1790 GB/s 1
  • FP16/BF16 Compute Leistung: 126.0 TFLOPS 1

Diese drei Kennzahlen – KapazitĂ€t, Geschwindigkeit und rohe Leistung – sind die SĂ€ulen unserer Analyse.

Schritt 2: Berechnung der Operational Intensity (Ops:Byte-VerhÀltnis) der GPU

Die operational intensity einer GPU, also das ops:byte-VerhĂ€ltnis, gibt an, wie viele Berechnungen sie fĂŒr jedes Byte an Daten durchfĂŒhren kann, das sie aus dem VRAM bewegt. Dies ist ein entscheidendes, hardware-spezifisches VerhĂ€ltnis, das das Gleichgewicht zwischen Berechnung und Speicherzugriff aufzeigt.

Die Formel ist einfach:

ops:byte Ratio = Compute Bandwidth (FLOPS) / Memory Bandwidth (Bytes/s)

Berechnen wir es fĂŒr unsere RTX PRO 6000:

  • Compute: 126.0 TFLOPS = 126,000,000,000,000 FLOPS
  • Memory: 1790 GB/s = 1,790,000,000,000 Bytes/s
ops_to_byte_ratio = 126,000,000,000,000 / 1,790,000,000,000
                  = 70.39 ops/byte

Das bedeutet, damit unsere Hardware vollstĂ€ndig ausgelastet ist, muss unsere Anwendung ungefĂ€hr 70,39 Gleitkommaoperationen fĂŒr jedes einzelne Byte ausfĂŒhren, das sie aus dem VRAM abruft.

  • FĂŒhrt unser Modell weniger Operationen pro Byte aus, sind wir memory-bound.
  • Benötigt unser Modell mehr Operationen pro Byte, sind wir compute-bound.

Schritt 3: Berechnung der arithmetischen IntensitÀt des Modells

Als NĂ€chstes mĂŒssen wir die arithmetische IntensitĂ€t unseres Modells berechnen. Bei Transformern ist der anspruchsvollste Teil der Inferenz der Attention-Mechanismus.

Wir verwenden die Parameter fĂŒr das Modell Qwen/Qwen3-VL-32B-Instruct 2:

  • SequenzlĂ€nge (N): 4096
  • Modelldimension (d_model): 5120
  • Anzahl der Attention Heads (n_heads): 40
  • Dimension pro Head (d_head): 128

Berechnen wir die arithmetische IntensitÀt mit dem vereinfachten Roofline-Modell:

Arithmetic Intensity = (4 * N^2 * d_head) / (8 * N^2)
                     = d_head / 2
                     = 128 / 2
                     = 64.0 ops/byte

Die arithmetische IntensitÀt unseres Modells betrÀgt ungefÀhr 64,0 Operationen pro Byte.

Schritt 4: Identifizierung des Engpasses

Nun vergleichen wir die beiden VerhÀltnisse:

  • GPU Ops:Byte Ratio: 70.39 ops/byte
  • Model Arithmetic Intensity: 64.0 ops/byte

Da 64,0 < 70,39 gilt, ist unsere Arbeitslast eindeutig memory-bound. Dies ist bei LLM-Inferenz ĂŒblich und bedeutet, dass die Speicherbandbreite der primĂ€re begrenzende Faktor fĂŒr die Inferenzgeschwindigkeit ist.

Schritt 5: VRAM- und LeistungsschÀtzung

VRAM fĂŒr Modellgewichte

Ein Modell mit 32 Milliarden Parametern in HalbprÀzision (FP16) benötigt:

VRAM for Weights = 32 Billion Parameters * 2 Bytes/Parameter = 64 GB

VRAM fĂŒr den KV-Cache

Die KV-Cache-GrĂ¶ĂŸe pro Token betrĂ€gt:

KV Cache per Token = 2 * num_hidden_layers * hidden_size * 2 = 1,638,400 Bytes/token

Mit unserer 96 GB GPU stehen nach dem Laden des 64 GB Modells zur VerfĂŒgung:

Spare VRAM = 96 GB - 64 GB = 32 GB

Dies ermöglicht eine theoretische BatchgrĂ¶ĂŸe von:

Batch Size = Spare VRAM / (KV Cache per Token * Sequence Length) ≈ 4 sequences

LeistungsschÀtzung

Zeit pro Ausgabetoken (Decodierlatenz):

Time/Token = Model Size (Bytes) / Memory Bandwidth (Bytes/s) = 35.75 ms/token

Dies entspricht einem theoretischen Durchsatz von ~28 Token/Sekunde.

Time to First Token (Prefill Latency): FĂŒr eine Eingabe von 512 Tokens:

Prefill Time = (Prompt Tokens * Model Ops) / GPU Compute Power = 260.06 ms

Fazit

Unsere Analyse zeigt:

  1. Inference ist speichergebunden: Der Hauptengpass ist die 1790 GB/s Speicherbandbreite, nicht die 126.0 TFLOPS Rechenleistung.
  2. VRAM fĂŒr Batching: Die 96 GB VRAM sind ein bedeutender Vorteil und ermöglichen eine theoretische Batch-GrĂ¶ĂŸe von 4, um die Rechenleistung der GPU besser auszunutzen.
  3. Leistungserwartungen: Wir können einen theoretischen Durchsatz von etwa 28 Tokens/Sekunde und eine Prefill-Zeit von ungefĂ€hr 260,06 ms fĂŒr eine 512-Token-Eingabe erwarten.

Diese Berechnungen bieten eine solide Grundlage, um die LLM-Inferenzleistung zu verstehen und fundierte Hardware-Entscheidungen zu treffen.


References

Footnotes

  1. NVIDIA RTX PRO 6000 Blackwell Workstation Edition specifications, sourced from primeLine Solutions - PNY NVIDIA RTX PRO 6000 Blackwell ↩ ↩2 ↩3

  2. Qwen/Qwen3-VL-32B-Instruct model architecture parameters, sourced from Hugging Face Model Card. ↩