AI Toolkit CUDA Out of Memory? OOM bei Modell-Laden, Training und Sampling beheben
Wenn Ihr AI-Toolkit-Job mit CUDA out of memory, OOM during training step 3 times in a row oder 0 bytes is free fehlschlägt, starten Sie nicht einfach denselben Job unverändert neu.
In der Praxis kommen die meisten OOM-Fehler im AI Toolkit von einer dieser vier Stellen:
- Modell-Laden (bevor das eigentliche Training beginnt)
- die ersten Trainingsschritte
- Vorschau-Sampling / Baseline-Sample-Generierung
- videospezifische Spitzen durch zu viele Frames, zu große Buckets oder beides
Dieser Leitfaden ist der schnelle Weg zur Wiederherstellung: Identifizieren Sie, welchen OOM Sie haben, ändern Sie die richtigen Einstellungen in RunComfy AI Toolkit und kommen Sie schneller zu einem erfolgreichen Retry.
Schnell-Checkliste (hier starten)
- ✅ In Training die Batch Size reduzieren
- ✅ In Datasets den größten Resolution-Bucket zuerst deaktivieren
- ✅ In Sample die Width / Height / Sample Steps reduzieren oder vorübergehend Disable Sampling einschalten
- ✅ Show Advanced anklicken und sicherstellen, dass
gradient_checkpointing: true - ✅ Bei Videomodellen Num Frames reduzieren, bevor Sie die Learning Rate anfassen
- ✅ Wenn der Fehler selbst bei sehr konservativer Config auftritt, als mögliches Worker- / GPU-Zustandsproblem behandeln, nicht nur als Config-Problem
1) Sicherstellen, dass es dasselbe Problem ist
Sie sind hier richtig, wenn Ihre Logs Meldungen wie diese enthalten:
CUDA out of memory
torch.OutOfMemoryError
OOM during training step 3 times in a row
Tried to allocate ...
0 bytes is free
CUBLAS_STATUS_ALLOC_FAILED
Typische Situationen:
- der Job scheitert vor Step 1
- der Job erreicht Step 2–10 und geht dann wiederholt in OOM
- Training scheint okay, aber der Absturz passiert beim Generieren von Samples
- dieselbe Config funktioniert manchmal, manchmal nicht
2) Zuerst: Welche Art von OOM ist es?
A. OOM beim Modell-Laden oder vor Trainingsbeginn
Das bedeutet meist eines der folgenden:
- das Modell selbst ist zu schwer für das aktuelle Speicherspar-Setup
- Vorschau / Baseline-Sample-Generierung ist bereits zu teuer
- der Worker / die GPU ist in einem schlechten Zustand und startet nicht mit sauberem Speicher
Typische Anzeichen:
- Fehler bevor sinnvolle Trainingsschritte beginnen
- der Fehler tritt sofort nach dem Modell-Laden oder beim ersten Sample auf
- Logs zeigen fast keinen freien VRAM oder werfen einen CUBLAS-Allocation-Error
B. OOM in den ersten Trainingsschritten
Das ist der häufigste config-bedingte Fall.
Typische Ursachen:
gradient_checkpointingist aus- Batch Size zu hoch
- der größte Dataset-Bucket ist zu ambitioniert
- bei Video ist Num Frames der eigentliche Speicher-Spike
C. OOM beim Sampling / Vorschau-Generierung
Das ist eine sehr häufige Falle.
Ihre Training-Config ist vielleicht fast okay, aber die Vorschau ist zu teuer:
- Sample Width / Height zu groß
- Sample Steps zu hoch
- Sample Every zu häufig
- Vorschau-Video verwendet zu viele Frames
D. OOM nur manchmal
Das ist meist eine grenzwertige Config, kein Mysterium.
Beispiele:
- der Lauf überlebt kleinere Buckets, stürzt dann beim größten Bucket ab
- Video-Läufe scheitern nur bei den schwersten Clips
- der Trainingskern passt, aber die Sample-Generierung bringt es über die Kante
3) Schnellste Fixes in RunComfy AI Toolkit
Fix A — Gradient Checkpointing wieder einschalten
Das ist das Erste, was bei Bildmodell-OOMs zu prüfen ist.
Wo ändern
- Fehlgeschlagenen Job öffnen
- Show Advanced anklicken
- Unter
train:sicherstellen:
gradient_checkpointing: true
Im Zweifel: anlassen.
Fix B — Batch Size senken, Gradient Accumulation für Stabilität nutzen
Wo ändern
- Job-Editor öffnen
- Im Training-Panel:
- Batch Size reduzieren
- Gradient Accumulation beibehalten oder erhöhen, wenn ein etwas größerer effektiver Batch gewünscht ist, ohne den VRAM-Spitzenwert zu erhöhen
Sichere Retry-Regel
- Bildmodelle: bei OOM zuerst auf Batch Size = 1
- Videomodelle: Batch Size = 1 als Standard annehmen, es sei denn, die Config hat sich bereits als stabil erwiesen
Behandeln Sie die Learning Rate nicht als ersten Speicherhebel. Das ist sie normalerweise nicht.
Fix C — Den höchsten Dataset-Bucket zuerst entfernen
Wo ändern
- Zum Datasets-Panel gehen
- Unter Resolutions den höchsten Bucket zuerst deaktivieren
Sichere Rollback-Reihenfolge
- 1024 / 1536 → zuerst entfernen
- 512 / 768 beibehalten, während die Stabilität geprüft wird
- nach Stabilisierung größere Buckets einzeln wieder hinzufügen
Das ist einer der schnellsten Wege, einen grenzwertigen Lauf in einen wiederholbaren zu verwandeln.
Fix D — Vorschau-Sampling günstig machen oder vorübergehend deaktivieren
Wenn der Absturz passiert, bevor Training richtig losgeht, oder jedes Mal beim Sampling, zuerst die Vorschau fixen.
Wo ändern
- Sample-Panel öffnen
Dann eines oder mehrere davon:
- Width reduzieren
- Height reduzieren
- Sample Steps reduzieren
- Sample Every erhöhen
- Disable Sampling für einen Validierungslauf einschalten
Guter erster Retry
Wenn das Ziel „beweisen, dass der Job trainieren kann" ist, ist ein temporärer Lauf ohne Sampling in Ordnung.
Nach Stabilisierung Vorschauen mit kleineren Einstellungen wieder einschalten.
Fix E — Videomodelle: Num Frames vor allem anderen reduzieren
Bei Videomodellen sind Frames normalerweise der größte Speicherhebel.
Wo ändern
- Datasets-Panel → Num Frames
- Sample-Panel → Num Frames
Bei Video-OOM: zuerst Frames reduzieren, dann Batch Size, dann Resolution.
Nicht mit Optimizer oder LR anfangen.
Fix F — Den Low-Memory-Pfad des Modells nutzen
Einige Architekturen sind dafür vorgesehen, bei knappem VRAM mit Speicherspar-Einstellungen trainiert zu werden.
Wo ändern
- Show Advanced anklicken
- Unter
model:suchen:
low_vram: true
Bei manchen Modellen umfasst der korrekte Low-Memory-Pfad auch modellspezifische Quantisierung oder Text-Encoder-Behandlung. Dem entsprechenden Modell-Leitfaden folgen, statt zu raten.
4) Schnelldiagnose nach Fehler-Zeitpunkt
| Wann es abstürzt | Wahrscheinlichste Ursache | Erste Änderung |
|---|---|---|
| Vor Step 1 / beim initialen Sample | Vorschau zu schwer, Modell-Ladedruck oder unsauberer Worker | Sampling deaktivieren oder Vorschau verkleinern |
| Step 1–10 | GC aus, Batch zu hoch, Bucket zu groß | GC an, Batch auf 1, größten Bucket entfernen |
| Nur beim Sampling | Vorschau-Einstellungen zu teuer | Width/Height/Sample Steps senken oder Sampling deaktivieren |
| Manchmal ja, manchmal nein | Grenzwertige Config | Größten Bucket / Frames reduzieren und stabilisieren |
| Selbst konservative Config scheitert sofort | Mögliches GPU- / Worker-Zustandsproblem | Auf einem frischen Worker neu erstellen oder Support kontaktieren |
5) Config-OOM von Umgebungs- / GPU-Zustandsproblemen unterscheiden
Behandeln Sie es als nicht nur ein Config-Problem, wenn all das zutrifft:
- Batch Size = 1
gradient_checkpointing: true- konservative Resolution / Frames
- der Job scheitert trotzdem bevor Training sinnvoll beginnt
- Logs zeigen
0 bytes is freeoder CUBLAS-Allocation-Fehler
In dieser Situation:
- aufhören, denselben Retry zu wiederholen
- frischen Job auf einem frischen Worker erstellen, wenn möglich
- wenn dieselbe konservative Config früher funktionierte und jetzt sofort scheitert, an Support eskalieren
Das ist wichtig, weil wiederholte Retries sowohl Zeit als auch GPU-Budget verschwenden können.
6) Die sicherste Rollback-Reihenfolge
Für Bildmodelle
gradient_checkpointing: true- Batch Size → 1
- größten Resolution-Bucket entfernen
- Sample verkleinern oder deaktivieren
- low_vram oder den Low-Memory-Pfad des Modells aktivieren
Für Videomodelle
- Num Frames reduzieren
- Batch Size → 1
- größten Resolution-Bucket entfernen
- Sample verkleinern oder deaktivieren
- low_vram oder modellspezifisches Offloading / Quantisierung aktivieren
7) Nach dem ersten erfolgreichen Retry
Sobald ein stabiler Lauf vorliegt:
- nur eine schwerere Einstellung auf einmal wieder hinzufügen
- notieren, was geändert wurde
- nicht mehrere Hochrisiko-Einstellungen gleichzeitig wieder einführen
Gute Reihenfolge zum Hochskalieren:
- dieselben stabilen Speichereinstellungen beibehalten
- Steps erhöhen
- einen größeren Bucket wieder aktivieren
- reichhaltigeres Sampling wieder aktivieren
- erst dann größere Batch oder längeres Video testen
Einzeiler-Zusammenfassung
Wenn AI Toolkit OOM wirft, hören Sie mit zufälligem Herumprobieren auf.
gradient_checkpointing einschalten, Batch Size senken, den größten Resolution-Bucket entfernen und Vorschau-Sampling günstiger machen, bevor Sie es erneut versuchen.
Verwandte Leitfäden
Bereit zum Starten des Trainings?
