PyTorch und Meta: über 90 Prozent effektive Trainingszeit durch 40+ Optimierungen, MegaCache reduziert PT2-Kompilierung um 40 Prozent
Warum es wichtig ist
Meta hat veröffentlicht, wie sie über 90 Prozent Effective Training Time (ETT) für das Offline-Training ihrer Empfehlungsmodelle erreicht haben. Die Methode umfasst mehr als 40 neue Optimierungen im PyTorch-Ökosystem, MegaCache, das die PT2-Kompilierungszeit um 40 Prozent reduziert, eigenständiges Modell-Publishing, das 30 Minuten pro Job einspart, und asynchrones Checkpointing. Die Verbesserungen wurden über PyTorch und TorchRec als Open Source veröffentlicht.
Ein Team von 16 Ingenieuren bei Meta, zusammen mit Mitwirkenden aus dem PyTorch-Projekt, veröffentlichte am 17. April 2026 einen detaillierten Beitrag darüber, wie sie bis Ende 2025 über 90 Prozent Effective Training Time (ETT) für das Offline-Training von Empfehlungsmodellen erreicht haben. Der Artikel ist ein Gemeinschaftswerk von Ruilin Chen, Yuzhen Huang, Hang Qi und anderen und enthält eine Liste von 40+ konkreten Optimierungen, die dabei entwickelt wurden.
Was ETT ist und warum sie wichtig ist
Meta führt eine neue Metrik ein — Effective Training Time (ETT%) — die misst, welcher Prozentsatz der gesamten End-to-End-Wandzeit tatsächlich für produktives Training aufgewendet wird.
Die Formel ist einfach:
ETT% = 100% - Idleness% - Failure%
Meta unterteilt ETT in drei Teilmetriken:
- Time to Start — von der Hardware-Zuteilung bis zum ersten Batch-Verbrauch
- Time to Recover — wie lange Neustart und Wiederaufnahme nach Ausfällen dauern
- Number of Failures — Gesamtzahl infrastrukturbedingter Unterbrechungen
Der Grund, warum dies wichtig ist: Die klassische Metrik Model FLOPs Utilization (MFU) misst nur die Effizienz innerhalb des Trainings, ignoriert aber alles, was davor, dazwischen und danach passiert. Bei der Skalierung werden die „Zwischenphasen” zum dominierenden Kostenfaktor.
MegaCache: 40 Prozent weniger Kompilierung
Eine der wichtigsten Innovationen ist MegaCache — ein konsolidiertes Caching-System für PT2-Komponenten (PyTorch 2.0):
- Inductor-Cache
- Triton-Bundler
- AOT Autograd
- Dynamo PGO
- Autotune-Einstellungen
Meta hat sie zu einem einzigen Cache zusammengeführt, der einmal erstellt und in nachfolgenden Jobs wiederverwendet wird.
Ergebnis: ~40 Prozent Reduzierung der durchschnittlichen PT2-Kompilierungszeit bis Ende 2025. Weitere Vorteile sind reduzierte Anforderungen an Remote-Server, schnelleres Modell-Setup und zuverlässigerer Start für wiederholte Jobs.
Checkpoint-Management
Checkpointing ist entscheidend für die Wiederherstellung, blockiert aber normalerweise das Training. Meta arbeitete an drei Fronten:
Asynchrones Checkpointing:
- Erstellt eine CPU-Speicherkopie des Checkpoints
- Der Haupt-Trainer läuft weiter, während ein Hintergrundprozess hochlädt
- Reduziert GPU-Leerlaufzeit
PyTorch-natives Staging:
- Ersetzte die benutzerdefinierte C++-Staging-Implementierung
- Verwendet neue PyTorch-native APIs
- Kompromiss: höherer Trainer-Speicher für weniger Blockierungszeit
Intervall-Optimierung:
- Unsaved Training Time = (Anzahl Ausfälle) × (Checkpoint-Intervall) / 2
- Checkpoint Save Blocking Time = (Train-Loop-Zeit) / (Checkpoint-Intervall) × (Blockierungszeit pro Checkpoint)
- Das optimale Intervall minimiert die gesamte verlorene Zeit
Eigenständiges Modell-Publishing: 30 Minuten weniger
Klassischer Ablauf: Das Training endet, dann erledigt dieselbe GPU noch das Modell-Publishing (Export in Produktionsformat, Validierung, Upload).
Meta hat Publishing vom Training getrennt:
- Das Training erstellt einen Anker-Checkpoint
- Ein separater CPU-basierter eigenständiger Job veröffentlicht das Modell parallel
Ergebnis: ~30 Minuten weniger pro Job. Für Unternehmen, die täglich Hunderte von Trainingsläufen durchführen, sind das Hunderte von Stunden pro Monat.
Trainer-Initialisierung
Kommunikationsoptimierungen:
- Unnötige Erstellungen von Prozessgruppen eliminiert
- Unnötige all_gather-Aufrufe für Metadaten entfernt
- Stattdessen wird globale Rang-Metadaten lokal nach dem Sharding-Plan-Broadcast aufgebaut
Pipeline-Optimierungen:
- Parallelisierung unabhängiger Initialisierungsphasen
- PT2-Kompilierung überschneidet sich mit DDP-Warm-up unter Verwendung von „Fast-Batch”-Daten
- Besonders nützlich für Foundation-Modelle mit langen Datenladezeiten
Fehlervermeidung
Meta identifizierte zwei Hauptursachen für Ausfälle:
- Job-Präemptionen (mehr gleichzeitige Jobs = mehr Konflikte)
- Dienst-Regressionen
Ihre Reaktion ist zweigleisig: Zusammenarbeit mit Infrastrukturteams an neuen Scheduling-Algorithmen, plus ein komponentenbasiertes Observability-Dashboard, das TTS, TTR, ungespeicherte Trainingszeit und Checkpoint-Speicherzeit in Echtzeit anzeigt.
Open-Source-Beiträge
PyTorch-2.0-Verbesserungen:
TORCH_COMPILE_DYNAMIC_SOURCESfür dynamische Formbehandlung- MegaCache-End-to-End-Caching-System
- PyTorch-native Staging-APIs
TorchRec-Verbesserungen:
- Sharding-Plan-Optimierungen (all_gather-Overhead eliminiert)
- Kommunikationsoptimierungsmuster
Alles in der PyTorch-Dokumentation zur Replikation in anderen Organisationen verfügbar.
Botschaft für die Industrie
Die tiefste Lektion aus Metas Beitrag ist ein Paradigmenwechsel in der Optimierung: von „wie trainieren wir jede Iteration schneller” zu „wie reduzieren wir alles, was kein echtes Training ist”. Während sich die Community auf MFU und die Steigerung des Durchsatzes konzentriert, zeigt Meta, dass ein 10-Prozent-ETT-Gewinn genauso wertvoll ist wie ein 10-Prozent-MFU-Gewinn — und oft durch Engineering viel leichter zu erzielen.
Für Organisationen, die KI-Training skalieren, wird ETT genauso wichtig wie MFU.
Dieser Artikel wurde mithilfe von künstlicher Intelligenz aus Primärquellen erstellt.
Verwandte Nachrichten
Anthropic und NEC bauen Japans größte KI-Ingenieursbelegschaft auf — Claude für 30.000 NEC-Mitarbeitende
AWS: Multimodale biologische Foundation-Modelle beschleunigen Arzneimittelentwicklung um 50 Prozent und Diagnostik um 90 Prozent
CNCF: Infrastrukturingenieur migrierte 60+ Kubernetes-Ressourcen in 30 Minuten mit Hilfe eines KI-Agenten