AMD MI300X übertrifft NVIDIA H100 bei LLM-Inferenz
(blog.tensorwave.com)- Im Inferenzvergleich von TensorWave und MK1 mit Mixtral 8x7B zeigte die Kombination MI300X+MK1 Flywheel in realen Chat-Use-Cases einen um 33 % höheren Durchsatz als H100 SXM+vLLM
- Im Mittelpunkt des Tests stand ein MoE-Modell: Mixtral 8x7B passt auf eine einzelne MI300X mit 192 GB VRAM, während die H100 mit 80 GB VRAM zwei Karten und Tensor Parallelism 2 benötigt
- Bei Offline-Batch-Inferenz lag die MI300X-Kombination bei allen Batch-Größen vorn; der Leistungsunterschied lag im Bereich von 1,22x bis 2,94x
- Der Test mit Online-Chat-Verteilung nutzte Anfragen mit durchschnittlich 573 Eingabe-Tokens und 50 Ausgabe-Tokens; bei einem Zielwert von 5 Sekunden mittlerer Latenz verarbeiteten 2 MI300X 33 % mehr Anfragen pro Sekunde als 2 H100
- TensorWave sieht die MI300X unter Berücksichtigung nicht nur des Durchsatzes, sondern auch der Kostenwettbewerbsfähigkeit und Hardware-Verfügbarkeit als starke Option für großskalige Cloud-Inferenz
Kern des Vergleichs: Kann MI300X H100 bei MoE-Inferenz übertreffen?
- Im Zentrum des Tests steht die Frage, ob AMDs Flaggschiff-Beschleuniger MI300X die NVIDIA-Hopper-Architektur in realen AI-Workloads übertreffen kann
- TensorWave und MK1 arbeiteten einen Monat lang zusammen, um AI-Inferenzleistung aus AMD-Hardware herauszuholen
- Der anfängliche Fokus lag auf der Mixture-of-Experts(MoE)-Architektur
- MoE wurde wegen seiner Recheneffizienz und Popularität ausgewählt
- Die Struktur wird als Grundlage leistungsstarker Open-Source-LLMs von Mistral, Meta, Databricks und X.ai vorgestellt
- Die MI300X mit MK1-Inferenzsoftware erreichte in einem realen Chat-Use-Case auf Basis von Mixtral 8x7B einen um 33 % höheren Durchsatz als die Kombination aus H100 SXM und vLLM
- TensorWave erkennt an, dass das Software-Ökosystem von NVIDIA reifer ist, bewertet AMD aber bereits als starken Wettbewerber im AI-Markt
Benchmark-Konfiguration
- Alle Benchmarks wurden mit dem Modell Mixtral 8x7B durchgeführt
- Alle Inferenz-Frameworks wurden so konfiguriert, dass sie den FP16-Rechenpfad verwenden
- Die Aktivierung von FP8-Berechnungen bleibt zukünftiger Arbeit vorbehalten
- Um unterschiedliche Tensor-Parallelism-Konfigurationen zu vergleichen, wurde der Durchsatz der MI300X auf das Doppelte extrapoliert
-
AMD-System
- Der TensorWave-Knoten wurde mit 8 MI300X-Beschleunigern, 2 AMD-EPYC-CPU-Prozessoren, insgesamt 192 Kernen und 2,3 TB DDR5-RAM getestet
- Die Spezifikationen der MI300X-Beschleuniger lauten wie folgt
- 192 GB VRAM
- 5,3 TB/s
- FP16 ca. 1300 TFLOPS
- Die Software-Konfiguration lautet wie folgt
- ROCm 6.1.2
- MK1-Inferenz-Engine Flywheel v0.9.2
- AMD-ROCm-optimierter vLLM-Fork rocm/vllm v0.4.0
- Da das gesamte Mixtral-8x7B-Modell in die 192 GB VRAM einer einzelnen MI300X passt, wurde Tensor Parallelism auf 1 (tp=1) gesetzt
-
NVIDIA-System
- Das H100-System wurde mit 8 H100 SXM5-Beschleunigern mit NVLink, 160 CPU-Kernen und 1,2 TB DDR5-RAM getestet
- Die Spezifikationen der H100-SXM5-Beschleuniger lauten wie folgt
- 80 GB VRAM
- 3,35 TB/s
- FP16 ca. 986 TFLOPS
- Die Software-Konfiguration lautet wie folgt
- CUDA 12.2
-
vLLM v4.3
- Um Mixtral 8x7B auf zwei H100 mit 80 GB VRAM unterzubringen, wurde Tensor Parallelism auf 2 (tp=2) gesetzt
Ergebnisse der Offline-Inferenz
- Der Offline-Test erzeugt Prompts fester Größe, übergibt sie direkt an das Modell und misst den maximalen Durchsatz der jeweiligen Inferenzlösung
- Offline-Batching verarbeitet mehrere Prompts gleichzeitig, um die Hardware-Effizienz zu erhöhen
- Mit größerer Batch-Größe steigt der Durchsatz
- Da gleichzeitig mehr Anfragen verarbeitet werden, steigt auch die Latenz
- Gemäß Standardpraxis wurden die Anfragen innerhalb eines Batches auf gleiche Eingabegröße und gleiche Ausgabegröße beschränkt
- Der Test wurde mit einer modifizierten Version von
benchmark_throughput.pyaus dem vLLM-Repository durchgeführt- Sie wurde refaktoriert, um Flywheel als Backend einzubeziehen
- Um Caching-Mechanismen auszuschließen, wurden die Prompts innerhalb eines Batches zufällig erzeugt
- Die Kombination aus MI300X und MK1 Flywheel zeigte bei allen Batch-Größen eine höhere Leistung als die Kombination aus H100 und vLLM
- Die Leistungssteigerung lag im Bereich von 1,22x bis 2,94x
Test mit Online-Chat-Verteilung
- Der Online-Benchmark wurde so gestaltet, dass er eine realistische allgemeine Chat-Anwendung simuliert
- Der Test erzeugt unabhängige Worker, die Anfragen an einen Endpoint senden, und erhöht die Zahl der Worker, um die Anzahl gleichzeitiger Anfragen zu steigern
- Die Anfragen wurden anhand einer Standardverteilung für Text-Chat erzeugt
- Die durchschnittliche Eingabe betrug 573 Tokens
- Die durchschnittliche Ausgabe betrug 50 Tokens
- Das Benchmark-Tool unterstützt beliebige Datenverteilungen
- Es gibt drei Messgrößen
- Durchsatz: Anzahl der Anfragen pro Sekunde, die bei einem gegebenen Workload verarbeitet werden können
- Mittlere Latenz: durchschnittliche Zeit bis zur vollständigen Antwortgenerierung pro Anfrage
- TPOT (Time Per Output Token): durchschnittliche Zeit zur Erzeugung jedes nachfolgenden Tokens nach dem ersten Token; beeinflusst die Geschwindigkeit bei der Generierung langer Antworten
-
Ergebnisse ohne Streaming
- Der erste Online-Benchmark testet einen Nicht-Streaming-Use-Case
- Er misst Durchsatz und Latenz, die für die Bereitstellung der vollständigen Antwort erforderlich sind
- Bei einem Zielwert von 5 Sekunden mittlerer Latenz verarbeiteten 2 MI300X (tp=1) 33 % mehr Anfragen pro Sekunde als 2 H100 (tp=2)
- Bei gleicher Servicequalität können weniger Beschleuniger eingesetzt werden, um die gleiche Nutzerzahl zu bedienen
-
Streaming-Ergebnisse
- Der zweite Online-Benchmark aktiviert Streaming und misst Durchsatz sowie TPOT, während Tokens gestreamt werden
- Die MI300X zeigt bei allen TPOT-Werten einen höheren Durchsatz als die H100
- Auch bei höherem Traffic-Volumen kann die MI300X Text schneller generieren
Fazit und Deployment-Vorschlag
- In den Benchmark-Ergebnissen zeigt die AMD MI300X bei Offline- und Online-Inferenzaufgaben für MoE-Architekturen wie Mixtral 8x7B eine höhere Leistung als die NVIDIA H100
- Auch in realen Szenarien, die nicht nur hohen Durchsatz, sondern auch schnelle Antwortzeiten erfordern, liefert die MI300X starke Ergebnisse
- TensorWave schlägt vor, dass die MI300X zusammen mit MK1-Software unter Berücksichtigung von Leistung, Kostenwettbewerbsfähigkeit und Hardware-Verfügbarkeit gut geeignet ist, um AI-Inferenz in Unternehmen zu skalieren
- TensorWave bietet die MI300X zusammen mit MK1-Inferenzsoftware an und weist darauf hin, dass Nutzer sie selbst testen können
1 Kommentare
Meinungen auf Hacker News
Wenn man bedenkt, dass TensorWave ein auf AI-Workloads spezialisierter Cloud-Anbieter ist und AMD Instinct MI300X einsetzt, sollte man diesen Bericht mit einer gewissen Vorsicht lesen
Ein fairerer Vergleich wäre 8x H100 NVL (188 GB, <800 W)
Auch der Preis sagt viel aus. Wenn AMDs Leistung auf Nvidia-Niveau läge, gäbe es keinen Grund, die Karten für ein Viertel des Preises zu verkaufen
Ich verstehe nicht, warum man 2024 immer noch Benchmarks mit 128 Eingabe-Tokens macht. Das repräsentiert die meisten Workloads nicht, und die Prefill-Leistung ist sehr wichtig
Je nachdem, ob reale Queries kürzer oder länger sind, fällt auch anders aus, warum 128 ungeeignet ist
Wenn man ein Wort als ein Token betrachtet, sind in meinem Fall die meisten Queries kürzer als 128 Wörter
Ich versuche, diesen Punkt optimistisch zu sehen. Dieser Bereich braucht unbedingt Wettbewerb, und die derzeitige Marktkapitalisierung von $NVDA ist abnormal hoch. Sie liegt etwa 0,6 Billionen Dollar über der gesamten Frankfurter Wertpapierbörse
Außerdem gibt es große nicht börsennotierte Unternehmen im Besitz reicher Deutscher, etwa Discount-Riesen wie Lidl und Aldi oder den Autozulieferer Bosch
Das Nvidia-Problem wird sich in den nächsten Monaten bis Jahren wahrscheinlich von selbst bereinigen
Als AI-Wissenschaftler trainiere ich viele Modelle, und persönlich halte ich AMD im Vergleich zu Nvidia für unterbewertet
Die Chips sind nicht so schnell wie Nvidias neueste Produkte, und es gibt auch Hürden, die man überwinden muss, damit sie laufen
Aber für die meisten Workloads in den meisten Branchen ist AMD, wenn man die Frage ausklammert, ob AI selbst ein sinnvoller Kapitaleinsatz ist, deutlich kosteneffizienter und kann fast die gleichen Ergebnisse liefern
Markt- und Verkaufspreise spiegeln den wahrgenommenen Wert von Nvidia- und AMD-Lösungen wider. Das umfasst Tools, Software, Gesamtbetriebskosten und Administrierbarkeit
Außerdem frage ich mich, wie viele Unternehmen solche Beschleuniger so teuer kaufen, um acht 7B-Parameter-Modelle parallel laufen zu lassen
Es heißt auch, man könne ein 14B-Modell auf einem einzelnen Beschleuniger trainieren; ich würde gern Workloads sehen, die „den gesamten Beschleuniger für Training und Inferenz nutzen“, etwa welchen Inferenzdurchsatz man nach dem Training eines 14B-Modells bei einem 4x14B-Workload bekommt
AMD und bisher die meisten Anbieter mit Behauptungen zur Inferenzleistung, insbesondere Intel und Apple, haben sich nur Benchmarks herausgesucht, die sie gewinnen konnten, und den Rest ignoriert, bei dem Nvidia vorn liegt. Wie mehrere Kommentare auch bei diesem Beitrag anmerken, wird hier ein Vergleichsmodell aus einer Zwischengeneration verwendet
In einem einzelnen System, also einer Konfiguration mit acht Beschleunigern für LLMs, ist die MI300X bei den Gesamtbetriebskosten der Inferenz gegenüber der H100 sehr wettbewerbsfähig
Laut Microsoft bietet AMD Instinct MI300X bei GPT-4 das beste Preis-Leistungs-Verhältnis, und AMD arbeitet darauf hin, die Leistung pro Watt bis 2027 um das 100-Fache zu steigern
https://wccftech.com/amd-instinct-mi300x-best-price-performa...
https://www.techspot.com/news/102056-nvidia-allegedly-punish...
Großbestellungen für solche Beschleuniger werden Monate im Voraus aufgegeben
Microsofts MI300X sind unterdessen bereits vollständig reserviert
https://techcommunity.microsoft.com/t5/azure-high-performanc...
„Diese VMs und die Software, die sie antreibt, wurden zweckgerichtet für reale Produktions-Workloads von Azure AI Services entwickelt. Auch GPT-4 Turbo, das leistungsstärkste Natural-Language-Modell der Welt, haben wir bereits für diese VMs optimiert. Die ND MI300X v5 VM bietet führende Kosteneffizienz bei beliebten OpenAI- und Open-Source-Modellen.“
Ich frage mich, ob die Tensor-Parallel-Konfiguration die Leistung beeinflusst. Meine naive Vermutung wäre: ja, aber sicher bin ich mir nicht.
Dem Artikel zufolge kann die AMD-Konfiguration Mixtral 8x7B vollständig in die 192 GB VRAM einer einzelnen MI300X laden, sodass die Tensor-Parallelität
tp=1beträgt; die NVIDIA-Konfiguration muss es dagegen auf zwei H100 mit je 80 GB VRAM verteilen und braucht dahertp=2.Also ein Modell verwenden, das in die VRAM-Grenzen passt, und etwa 8-Bit-Quantisierung einsetzen, wenn das die Leistung verbessert, statt die Nachteile beider Geräte unnötig offenzulegen.
AMD scheint die bessere Hardware zu haben, hat aber noch nicht die Produktionskapazität, um mit Nvidia zu konkurrieren. Wenn echte Konkurrenz aufholt, wird interessant zu sehen sein, wie die Margen schrumpfen.
Alle glauben, CUDA sei der Grund für Nvidias Dominanz, aber das stimmt nicht. Fast 40 % des diesjährigen Umsatzes stammen von Hyperscalern, die ihre eigenen maßgeschneiderten Stacks zur Interaktion mit GPUs verwenden.
Es ist nur eine Frage der Zeit, bis Konkurrenten aufholen und günstigere GPUs anbieten.
Offenbar wird die CUDA-Plattform mit der C/C++-ähnlichen Sprache verwechselt, die Leute in
.cu-Dateien schreiben.Es stimmt zwar, dass manche keine
.cu-Dateien direkt schreiben, aber niemand umgeht den restlichen CUDA-Stack wienvcc, PTX, SASS, Runtime und Treiber.Ich arbeite selbst bei einem dieser „Hyperscaler“. Wer das nicht glaubt, kann sich ansehen, wie viele CUDA-Kernel es in PyTorch gibt: https://github.com/pytorch/pytorch/tree/main/aten/src/ATen/n...
Was Nvidia dominant macht, ist zu 100 % CUDA.
Ich meine, TSMC hat auch in den USA oder der EU mit der Produktion in einigen Fabriken begonnen.
Nvidia nutzt TSMC, und AMD nutzt ebenfalls TSMC.
Ein guter Start für AMD. Ich interessiere mich auch für Groq als weitere Inferenzoption abseits von Nvidia und nutze es gelegentlich.
Nvidia ist bei der Fertigung auf TSMC angewiesen. Dass Samsung eine konkurrierende Fertigungsinfrastruktur aufbaut, ist ebenfalls gut, weil Taiwan damit nicht zum Single Point of Failure wird.
Ohne geeignete statistische Kennzahlen, insbesondere wenn statt des weit verbreiteten 95. Perzentils nur der Durchschnitt verwendet wird und außerdem Performance pro Watt fehlt, ist der Vergleich nutzlos.
Das 95. Perzentil wäre zusätzlich auch gut.
INT8/FP8-Benchmarks wären ebenfalls schön gewesen. Beide Karten hätten das Modell wohl mit etwa 60 GB VRAM laden können, ohne bei der H100
tp=2verwenden zu müssen.