GEM Training: Wie Meta die Effizienz seines Anzeigen-Foundation-Models verdoppelt hat

GEM Training: Wie Meta die Effizienz seines Anzeigen-Foundation-Models verdoppelt hat
Deine Reaktion:

Wenn du in deinem Instagram-Feed eine Anzeige siehst, die dich interessiert, hat ein neuronales Netzwerk in Echtzeit entschieden, welche Werbung du siehst. Meta nennt dieses Netzwerk „Generative Ads Recommendation Model“ (GEM). Es wird auf Tausenden GPUs trainiert und hat Billionen von Parametern. Bis vor kurzem war das Training ineffizient: Die GPUs waren nur zu etwa 10 Prozent ausgelastet. Meta-Ingenieure haben die Effizienz verdoppelt und den Trainingsumfang vervierfacht. Wie, erklären wir hier – ohne C++-Code, aber mit den wichtigen Details.

Das Problem ist grundlegend: KI-Hardware und -Software sind auf große Sprachmodelle (LLMs) optimiert – auf gleichmäßige Sequenzen, dichte Matrizen, einfache Datenstrukturen. GEM sieht anders aus. Es verarbeitet Sequenzen stark variabler Länge – manche Nutzer haben 10 Interaktionen, andere 10.000. Es kombiniert spärliche Embedding-Tabellen mit dichten Netzwerken und reagiert empfindlich auf numerische Veränderungen. Dadurch bleiben GPU-Kerne unterfordert, ein Großteil der Rechenleistung ungenutzt. Die Meta-Ingenieure standen vor zwei Herausforderungen: die Auslastung einer einzelnen GPU erhöhen und das Training auf Tausende GPUs skalieren. Sie lösten das durch maßgeschneiderte Kerne, angepasste Präzision, Parallelisierung und Netzwerk-Topologie.

Die zwei Hebel der Effizienz: Locale MFU und Scaling Ratio

Um das Problem zu strukturieren, zerlegten die Forscher die Gesamteffizienz – gemessen als Model FLOPs Utilization (MFU) – in zwei Faktoren. Die lokale MFU zeigt, wie gut eine einzelne GPU ihre Recheneinheiten auslastet. Die Scaling Ratio zeigt, wie viel von dieser Leistung im verteilten Training erhalten bleibt. Erreichst du auf einer GPU 50 Prozent MFU, aber durch Kommunikation mit anderen GPUs bleibt nur die Hälfte übrig, hast du eine Scaling Ratio von 0,5 und eine effektive MFU von 25 Prozent.

Diese Trennung erlaubt es, an beiden Hebeln zu drehen. Die lokale MFU optimieren neue Kernel und ultraniedrige Präzision. Die Scaling Ratio verbessern Parallelisierungsstrategien und die Anpassung an die Netzwerk-Hierarchie. Beide Ansätze greifen ineinander und erfordern tiefes Hardware-Verständnis – das nennt man Hardware-Software-Co-Design. Genau das setzten die Meta-Ingenieure für GEM um.

Massgeschneiderte Kernel für Empfehlungsmodelle: Jagged Flash Attention

Ein zentrales Problem beim Training mit variablen Sequenzlängen ist Rechenverschwendung durch Padding. Hat ein Beispiel 10 Tokens, ein anderes 10.000, werden alle auf die maximale Länge aufgefüllt. Das kostet bis zu 50 Prozent Rechenzeit. Die Lösung heißt Jagged Flash Attention (JFA) – ein Kernel, der direkt auf unregelmäßigen, „zerklüfteten“ Tensoren arbeitet, ohne sie aufzufüllen.

JFA wurde in vier Generationen entwickelt. Die erste Version war langsamer als Padding. Durch Tricks steigerten die Entwickler die Performance deutlich. Eine wichtige Innovation: die teure Maskierung ersetzten sie durch eine Subtraktionsmethode. Statt ungültige Positionen mit -inf zu markieren – das verbraucht viele GPU-Instruktionen – maskieren sie Keys und Queries mit Null, was dank Tensor Memory Accelerator (TMA) nichts kostet. Die zusätzlichen Exponenten werden abgezogen. Das Ergebnis ist mathematisch identisch, aber schneller. Den Rückwärtsdurchlauf optimierten sie, indem sie auf Atomik-Operationen verzichteten und die Gradientenberechnung anders aufteilten. JFA v4 erreicht eine Verbesserung von 40 bis 140 Prozent gegenüber Version 2 und trägt wesentlich zur lokalen MFU bei.

GDPA und BlockAttention: Effizienz für unterschiedliche Aufmerksamkeitsmuster

Nicht nur die Sequenzlängen variieren, auch die Aufmerksamkeitsmechanismen. GEM verwendet Selbst-Aufmerksamkeit für Nutzerhistorie, Cross-Attention für die Interaktion zwischen Nutzern und Anzeigen und Pooled Multi-Head Attention (PMA), um lange Sequenzen zu komprimieren. Diese Muster haben verschiedene Formen: mal lange Queries mit kurzen Keys, mal umgekehrt. Standard-FlashAttention ist auf symmetrische, dichte Sequenzen ausgelegt und versagt bei unregelmäßigen Mustern – die GPU-Kerne bleiben unterfordert.

Das Team entwickelte eine generalisierte Kernel-Familie namens Generalized Dot-Product Attention (GDPA), die alle Interaktionsmuster vereint. Der Clou: Die ursprüngliche Softmax-Aktivierung wird durch andere Aktivierungen wie GELU oder SiLU ersetzt. Das erfordert eine Umstellung der Pipeline, weil der Softmax-Korrekturterm wegfällt. So werden Ressourcen frei für besseres Pipelining. Zusätzlich verteilen sie die Arbeitslast geschickt auf die SMs, sortieren ungültige Tiles im Voraus aus und weisen die verbleibenden im Zickzack zu – die Load-Balance verbessert sich deutlich. Parallel führten sie BlockAttention ein, das die Kosten für lange Nutzerverläufe von O(L²) auf O(L) reduziert. Es unterteilt die Sequenz in Blöcke und berücksichtigt nur relevante Beziehungen. Das spart Rechenaufwand, ohne die Modellqualität zu beeinträchtigen.

Ultra-niedrige Präzision: MXFP8 für CTR/CVR-Ziele

Moderne GPUs sind für gemischte Präzision ausgelegt – Float16 oder BFloat16 sind Standard. Empfehlungsmodelle, die auf Click-Through-Rate (CTR) und Conversion-Rate (CVR) optimiert werden, reagieren empfindlich auf numerische Stabilität. Zu starke Präzisionsreduktion kann Qualität kosten. Meta-Ingenieure fanden trotzdem einen Weg, mit MXFP8 zu arbeiten – einer 8-Bit-Präzision mit mikroskalierbaren Exponenten. Sie passten diese Präzision speziell für die Aufmerksamkeits- und MLP-Schichten von GEM an.

Das Geheimnis: die Präzision nicht global reduzieren, sondern gezielt an unkritischen Stellen. Dazu nutzten sie Loss Scaling und Clip-Gradients für Stabilität. So nutzten sie die Tensor-Cores besser aus, ohne dass CTR/CVR-Vorhersagen litten. Das ist Co-Design: nicht alles auf 8 Bit umstellen, sondern verstehen, wo Empfindlichkeit liegt.

Topologie-bewusster 5D-Parallelismus und SM-freie Kollektive

Auch bei optimal ausgelasteter GPU muss das Training über Tausende GPUs verteilt werden. GEM hat Billionen spärlicher Embedding-Parameter und Milliarden dichter Parameter. Die Kommunikation zwischen den GPUs droht zum Flaschenhals zu werden. Die Meta-Ingenieure entwickelten eine Parallelisierungsstrategie, die sich an der Netzwerk-Hierarchie des Rechenzentrums orientiert: 2D FSDP (Fully Sharded Data Parallel) für dichte Parameter, kombiniert mit Experten-Parallelismus, plus 2D-Modellparallelität für spärliche Parameter. Das ergibt einen 5D-Parallelismus, der die Kommunikationsmuster an die verfügbare Bandbreite anpasst.

Ein weiterer Trick: Sie verzichten auf Streaming-Multiprozessor-Ressourcen für die Kollektiv-Kommunikation. Die Kommunikation läuft über dedizierte Hardware-Einheiten, sodass die SMs vollständig für Berechnungen frei sind. Dadurch überlappt Kommunikation besser mit Berechnung, was die Scaling Ratio erhöht. Zusammen mit Lastverteilungsstrategien, die ungleiche Sequenzlängen über die Ranks verteilen, brachten die Ingenieure die Scaling Ratio nahe an 1,0.

Ergebnisse und Einordnung: 20–25% Effizienz und 4x Skalierung

Was bedeutet das konkret? Meta kombinierte diese Techniken und steigerte die end-to-end Trainingseffizienz von GEM von etwa 10 auf 20 bis 25 Prozent MFU – verdoppelt in einem Jahr. Der Trainingsumfang (in FLOPs) vervierfachte sich, ohne dass die Zeit pro Schritt explodierte. Das zeigt: Auch jenseits von LLMs steckt viel Potenzial in effizienter Hardware-Nutzung.

Für Anwender von KI-Systemen heißt das: Empfehlungsmodelle werden besser und ressourcenschonender trainiert. Das schont die Umwelt, senkt Kosten und erlaubt komplexere Modelle in gleicher Zeit. Die Techniken – Jagged Flash Attention, topologie-bewusster 5D-Parallelismus – sind nicht auf Werbung beschränkt. Sie übertragen sich auf Bereiche mit variablen Sequenzlängen, etwa Video- oder Code-Verarbeitung. Metas Arbeit zeigt: KI-Systeme sind kein monolithischer Block. Sie entstehen aus Hardware-Eigenschaften, Algorithmus-Design und Systemarchitektur. Nur so lassen sich riesige Rechenressourcen effektiv nutzen – und dieser Ansatz wird wichtiger.

Quelle: engineering.fb.com

Deine Reaktion:
Artikel teilen:
Krötzsch-Check0 — 100
Fakten 85
Relevanz 78
Hype 10
Einschätzung 80
Redaktion 50 Stand 50 · noch keine Stimmen
Ist das Hype?
Sebastian Krötzsch
Autor

Sebastian Krötzsch

Sebastian Krötzsch schreibt auf sebask.de über Künstliche Intelligenz, Automatisierung, digitale Systeme und die Frage, was davon im Alltag wirklich nützlich ist. Ohne Buzzword-Nebel, dafür mit klarem Blick auf Praxis, Tools und echte Wirkung.