🟡 🔧 Hardware Veröffentlicht: · 2 Min. Lesezeit ·

AMD: ROCm Low-Latency-GEMM-Kernel beschleunigen LLM-Inferenz bis zu 1,79× auf Instinct MI355X

Redaktionelle Illustration: ROCm Low-Latency-GEMM-Kernel beschleunigen LLM-Inferenz bis zu 1,79× auf Instinct MI355X, ohne Text und Gesichter

AMD veröffentlichte das FlyDSL-System im AITER-Framework (AI Tensor Engine for ROCm), das automatisch spezialisierte GEMM-Kernel für die LLM-Decode-Phase auf AMD-GPUs generiert. Ergebnis: 1,64× durchschnittliche Latenzreduktion und 1,79× Beschleunigung für die kritischsten Szenarien mit M≤8 Token, getestet auf Instinct MI355X mit 256 Compute-Einheiten.

🤖

Dieser Artikel wurde mithilfe von künstlicher Intelligenz aus Primärquellen erstellt.

Was ist GEMM und die Decode-Phase eines LLMs?

GEMM (General Matrix Multiply, allgemeine Matrixmultiplikation) ist die grundlegende Rechenoperation, die jeden Durchlauf durch ein großes Sprachmodell dominiert. In der Prefill-Phase verarbeitet das Modell den Eingabe-Prompt parallel, doch in der Decode-Phase — wenn es Token für Token ausgibt — ist die Batch-Größe M typischerweise klein: 1, 2, 4, 8 oder 16 Zeilen. Genau diese Asymmetrie (kleines M, aber großes K und N in Tausenden) macht die Decode-Phase zum kritischen Engpass: Standard-GEMM-Routinen, die für hohen Durchsatz optimiert sind, liefern hier schlechte Latenz.

Drei Techniken von FlyDSL im AITER-Framework

AMD hat im ROCm-Ökosystem AITER (AI Tensor Engine for ROCm) und darin FlyDSL entwickelt — einen Generator, der automatisch spezialisierte GEMM-Kernel synthetisiert. FlyDSL kombiniert drei komplementäre Techniken:

  1. Inter-CTA Split-K-Parallelismus — Erweitert das Launch-Grid entlang der K-Dimension, verteilt die Arbeit auf mehrere Blöcke (CTAs) und eliminiert die Nichtnutzung von GPU-Ressourcen.
  2. Intra-CTA K-Slice-Splitting — Teilt innerhalb eines einzelnen CTAs die K-Achse in kleinere Scheiben auf und erhöht so die nutzbare Parallelität ohne zusätzliche Synchronisationskosten.
  3. LDS-Pipeline (mehrphasig) — Überlappt den Datentransfer vom globalen in den lokalen geteilten Speicherpuffer (LDS) mit aktiver Berechnung und verbirgt so die Speicherlatenz der AMD-Instinct-MI355X-Architektur (gfx950, 256 Compute-Einheiten).

Ergebnisse und Hardware: 1,64× im Durchschnitt, 1,79× für kritischste Szenarien

Benchmarking wurde auf 32 primären Formen plus 48 zusätzlichen Varianten aus realen Produktionsmodellen durchgeführt — DeepSeek V3, Llama 70B und Llama 450B sowie Qwen32B — und verglich FlyDSL-Kernel mit drei Baseline-Implementierungen: HipblasLT, AITER Triton und AITER ASM. Die durchschnittliche Latenzreduktion beträgt 1,64× bei Schlüsselformen (K=7168), während für das decode-kritische Szenario M≤8 Token die Beschleunigung 1,79× erreicht. Bei spezifischen Formen wurde ein maximaler Gewinn von 2,37× gemessen. Bei einem breiteren Satz von BF16-Formen aus Produktionsmodellen liegt der Durchschnitt bei 1,49×.

Kann AMD den Software-Rückstand durch programmatische Ansätze aufholen?

FlyDSL und AITER stellen AMDs systematische Antwort auf das Software-Defizit im ROCm-Ökosystem dar. Während NVIDIAs cuBLAS einen jahrelangen Vorsprung hat, generiert AMD jetzt leistungsstarke Kernel programmatisch — was bedeutet, dass Optimierungen schnell auf neue GPU-Architekturen ausgedehnt werden können, ohne ASM-Code manuell zu schreiben. Für Betreiber, die einen Wechsel zur AMD-Instinct-Infrastruktur erwägen, wirkt sich dieser Fortschritt bei der Decode-Latenz direkt auf die Kosten pro generiertem Token aus.

Häufig gestellte Fragen

Was ist GEMM und warum ist es für die LLM-Inferenz wichtig?
GEMM (General Matrix Multiply) ist die Matrixmultiplikationsoperation, die die Berechnung in LLMs dominiert — insbesondere in der Decode-Phase, wenn das Modell Token für Token mit kleinen Batch-Größen wie M=1, 2, 4 oder 8 generiert.
Auf welchen Modellen hat AMD FlyDSL-Kernel getestet?
Tests wurden auf Matrixformen aus DeepSeek V3, Llama 70B und Llama 450B sowie Qwen32B auf dem AMD Instinct MI355X GPU mit 256 Compute-Einheiten (Architektur gfx950) durchgeführt.