Warum das Deaktivieren von Gradient Checkpointing in AI Toolkit zu OOM führt
Wenn Sie nicht genau wissen, warum Gradient Checkpointing ausgeschaltet ist, lautet die sicherste Faustregel:
Wieder einschalten.
Bei großen AI-Toolkit-Bildmodellen ist das Abschalten von gradient_checkpointing einer der schnellsten Wege, einen stabilen Lauf in einen OOM-Absturz zu verwandeln.
Dieser Leitfaden erklärt:
- was Gradient Checkpointing tut
- warum das Deaktivieren den VRAM sprengen kann
- welche Modellfamilien am empfindlichsten sind
- wann es tatsächlich sinnvoll ist, GC auszuschalten
- was Sie stattdessen ändern sollten, wenn Ihr Ziel Geschwindigkeit ist
Kurzantwort
Gradient Checkpointing ist hauptsächlich ein Speicher-gegen-Geschwindigkeit-Tausch.
- AN = niedrigerer VRAM-Spitzenwert, in der Regel sicherer
- AUS = höherer VRAM-Spitzenwert, manchmal schneller, deutlich leichter OOM
Für die meisten Nutzer – besonders bei großen Bildmodellen – ist es kein Qualitätsregler. Es ist ein Stabilitätsregler.
Schnell-Checkliste
- ✅ Klicken Sie auf Show Advanced
- ✅ Stellen Sie unter
train:sicher, dassgradient_checkpointing: truegesetzt ist - ✅ Starten Sie den Lauf mit derselben Batch Size und Auflösung erneut
- ✅ Falls immer noch OOM auftritt, verringern Sie die Batch Size und entfernen Sie den höchsten Auflösungs-Bucket
- ✅ Wenn Ihr eigentliches Problem die Vorschau-Erzeugung ist, reduzieren Sie stattdessen Sample Width / Height / Sample Steps, anstatt GC abzuschalten
1) Was Gradient Checkpointing tatsächlich tut
Sie brauchen die tiefe PyTorch-Theorie nicht, um es richtig zu verwenden.
Eine praktische Denkweise:
- mit GC AN behält AI Toolkit weniger Zwischen-Aktivierungsdaten im Speicher und berechnet einiges bei Bedarf neu
- mit GC AUS bleiben mehr dieser Daten im VRAM, sodass das Training schneller laufen kann, sofern genügend Speicher vorhanden ist
Das klingt erst einmal unbedenklich – bis folgende Faktoren zusammenkommen:
- hohe Auflösung
- mehrere Auflösungs-Buckets
- größere Batch Size
- aufwendiges Sampling
- schwere Architekturen wie Qwen Edit, Z-Image, FLUX / Flex-Klasse
Dann verschwindet der zusätzliche Speicherspielraum sehr schnell.
2) Warum das Abschalten „plötzlich" OOM verursacht
Nutzer denken oft:
„Ich habe doch nur einen Schalter geändert."
Aber dieser eine Schalter bestimmt, wie viel Aktivierungsspeicher während des Trainings im VRAM verbleibt.
Eine Konfiguration, die mit GC AN gerade noch „schwer, aber machbar" war, wird mit GC AUS „grenzwertig oder unmöglich".
Deshalb wirkt der Fehler so abrupt:
- dasselbe Dataset
- dasselbe Modell
- dieselben Preview-Prompts
- dieselbe Batch Size
- nur GC geändert
- jetzt OOM bei Step 2, Step 3 oder beim ersten Preview
3) Hochrisiko-Modellfamilien bei GC AUS
Basierend auf wiederholt beobachteten OOM-Mustern im AI Toolkit sind diese Kombinationen von Haus aus als riskant zu betrachten:
| Modellfamilie | Hohes Risiko bei GC AUS | Sicherster erster Versuch |
|---|---|---|
| Z-Image | 1024–1536-Buckets mit größerer Batch | GC AN, konservativ starten, dann hochskalieren |
| Qwen-Edit | 1024-Workflows mit größerer Batch / mehreren schweren Bedingungen | GC AN, Batch Size 1, Preview-Last reduzieren |
| FLUX-dev / Flex-ähnliche große Bildmodelle | größere Batches oder hochauflösendes Multi-Bucket-Training | GC AN, Batch Size 1–4 je nach Spielraum |
Ein nützliches Denkmodell:
- Z-Image wird schnell gefährlich bei hoher Auflösung + größerer Batch + GC AUS
- Qwen Edit wird schnell gefährlich bei 1024 + starke Konditionierung + GC AUS
- FLUX / Flex-ähnliche große Bildmodelle werden schnell gefährlich bei größerer Batch + GC AUS
4) Wo man es in RunComfy AI Toolkit ändert
In der aktuellen RunComfy-Oberfläche sehen Sie direkt Einstellungen wie:
- Batch Size
- Gradient Accumulation
- Steps
- Unload TE
- Cache Text Embeddings
gradient_checkpointing lässt sich jedoch am einfachsten über die erweiterte Konfiguration prüfen.
Schritt für Schritt
- Job öffnen
- Auf Show Advanced klicken
- Den
train:-Block finden - Setzen:
train:
gradient_checkpointing: true
- Job speichern
- Erneut starten, ohne etwas anderes zu ändern
Wenn dieselbe Konfiguration jetzt läuft, ist GC als Ursache bestätigt.
5) Was stattdessen tun, wenn Ihr Ziel Geschwindigkeit ist
Viele Nutzer schalten GC ab, weil sie schnelleres Training wollen.
Das ist nachvollziehbar – aber in der Regel das falsche erste Geschwindigkeitsexperiment.
Probieren Sie Folgendes vor GC AUS:
A. Vorschau-Sampling günstiger machen
Im Sample-Panel:
- Width / Height reduzieren
- Sample Steps reduzieren
- Sample Every erhöhen
- Disable Sampling vorübergehend AN, um die Trainingsstabilität zu prüfen
Das bringt oft mehr praktischen Geschwindigkeitsgewinn als eine riskante GC-AUS-Konfiguration.
B. Batch klein halten, ggf. mit Accumulation skalieren
Im Training-Panel:
- Batch Size konservativ halten
- Gradient Accumulation nur erhöhen, wenn Sie eine etwas größere effektive Batch möchten, ohne den VRAM-Spitzenwert stark zu erhöhen
C. Zuerst den höchsten Bucket entfernen
In Datasets:
- 512 / 768 beibehalten
- 1024 / 1536 erst nach einem stabilen Lauf wieder hinzufügen
D. Den vorgesehenen Low-Memory-Pfad des Modells nutzen
Bei manchen Architekturen ist der richtige Weg nicht „GC AUS", sondern:
low_vram: true- modellspezifische Quantisierung
- modellspezifische Text-Encoder-Optimierung
Folgen Sie dem Modell-Leitfaden – raten Sie nicht.
6) Wann ist es tatsächlich in Ordnung, GC auszuschalten?
Behandeln Sie GC AUS als fortgeschrittenes Experiment, nicht als Standard.
Vernünftige Voraussetzungen:
- Sie haben bereits einen stabilen Lauf
- die Batch Size ist noch konservativ
- Sie befinden sich nicht schon am Limit des größten Buckets
- Vorschauen sind günstig oder deaktiviert
- Sie haben genügend VRAM-Spielraum
- Sie ändern eine Variable, nicht mehrere
Ein guter Testablauf:
- Job mit GC AN stabilisieren
- restliche Konfiguration identisch lassen
- GC ausschalten
- beobachten auf:
- Early-Step-OOM
- Sampling-OOM
- intermittierende Bucket-Spitzen
Falls davon etwas eintritt, schalten Sie GC wieder an und belassen es dabei.
7) Was GC AUS nicht ist
Gradient Checkpointing ist nicht:
- ein magischer Qualitätsverstärker
- ein Schalter zur Verbesserung der Ähnlichkeit
- die richtige erste Maßnahme bei schlechten Samples
- ein gutes erstes Experiment, wenn Sie bereits OOM haben
Wenn Ihre Samples schwach sind, prüfen Sie:
- Dataset-Qualität
- Captions
- Rank
- Steps
- Preview-Parity
Gehen Sie nicht davon aus, dass GC AUS die Lösung ist.
8) FAQ
Schadet GC AN der Ausgabequalität?
In der Praxis bemerken die meisten Nutzer keinen Qualitätsunterschied.
Der wirkliche Trade-off ist primär Speicher gegen Geschwindigkeit.
Ich habe GC eingeschaltet und habe trotzdem OOM. Was nun?
Dann sind Ihre nächsten Stellschrauben:
- Batch Size
- größter Auflösungs-Bucket
- Preview-Sampling-Kosten
- bei Video: Num Frames
Sollte ich einen ersten Lauf jemals mit GC AUS starten?
Für die meisten Nutzer: Nein.
Zuerst Stabilität nachweisen, dann experimentieren.
Einzeiler-Zusammenfassung
Wenn Sie im AI Toolkit OOM bekommen und gradient_checkpointing ausgeschaltet ist, korrigieren Sie das zuerst.
GC AN ist der sichere Standard. GC AUS ist ein fortgeschrittenes Geschwindigkeitsexperiment.
Verwandte Leitfäden
Bereit zum Starten des Trainings?
