ComfyUI Multi GPU: Mehrere GPUs nutzen, ohne Workflows zu zerstören
Lerne, was ComfyUI mit mehreren GPUs kann und was nicht, wie `--cuda-device` funktioniert und wie du getrennte ComfyUI-Instanzen auf unterschiedlichen Ports startest.
ComfyUI kann auf einer bestimmten GPU laufen, und du kannst mehrere ComfyUI-Instanzen auf unterschiedlichen GPUs betreiben.
Wenn du nach comfyui multi gpu suchst, ist die Kurzfassung:
- ein normaler Workflow bleibt meistens auf genau einer ausgewählten GPU
- der praktikable Zwei-GPU-Weg sind meist zwei ComfyUI-Instanzen auf zwei Ports
--cuda-deviceist das verlässlichste Flag für "nutze GPU 1 statt GPU 0"
Die meisten Nutzer kommen stabiler ans Ziel, wenn sie je eine ComfyUI-Instanz pro GPU starten, statt zu erwarten, dass ein einzelner KSampler sich automatisch über mehrere Karten verteilt.
Schnellantwort
| Ziel | Beste Lösung | Beispiel |
|---|---|---|
| GPU 1 statt GPU 0 verwenden | ComfyUI mit --cuda-device 1 starten | python main.py --cuda-device 1 |
| Zwei Queues parallel laufen lassen | Zwei ComfyUI-Instanzen auf verschiedenen Ports starten | --cuda-device 0 --port 8188, --cuda-device 1 --port 8189 |
| Alle GPUs sichtbar lassen, aber eine bevorzugen | --default-device nur bewusst verwenden | python main.py --default-device 1 |
| Einen KSampler über mehrere GPUs aufteilen | Standardmäßig meist nicht unterstützt | Nur mit Modellen oder Nodes, die das ausdrücklich unterstützen |
| VRAM-Druck reduzieren | VRAM-Flags oder kleinere Workflows nutzen | --lowvram, kleinere Auflösung, quantisierte Modelle |
Was Multi GPU in ComfyUI wirklich bedeutet
Viele Nutzer werfen drei Dinge zusammen:
- Eine GPU auswählen: ComfyUI läuft gezielt auf einem Gerät.
- Mehrere Instanzen starten: zwei Browser-Sessions, zwei Ports, zwei Queues, zwei GPUs.
- Einen Workflow über mehrere GPUs aufteilen: ein einzelnes Modell oder ein einzelner Workflow nutzt mehrere GPUs gleichzeitig.
Die ersten beiden Muster funktionieren gut. Das dritte ist im normalen ComfyUI-Alltag nicht der Standard.
Schritt 1: GPUs prüfen
Auf Windows oder Linux mit NVIDIA-GPUs:
nvidia-smiDie linke Spalte zeigt dir meist die GPU-Indizes. Die erste Karte ist meistens 0, die zweite 1.
Prüfe danach, ob PyTorch CUDA überhaupt sieht:
python -c "import torch; print(torch.cuda.device_count()); print(torch.cuda.get_device_name(0))"Wenn torch.cuda.device_count() 0 zurückgibt, hast du noch kein Multi-GPU-Problem, sondern zuerst ein PyTorch-/CUDA-Installationsproblem. Dann starte mit GPU Compatibility.
Schritt 2: Eine GPU mit --cuda-device auswählen
Für eine manuelle Installation:
python main.py --cuda-device 1Für das Windows-Portable-Paket bearbeite oder kopiere deine Start-.bat und füge das Flag hinter main.py ein:
.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --cuda-device 1Die offiziellen ComfyUI-Argumente beschreiben --cuda-device so, dass diese Instanz genau dieses CUDA-Gerät benutzt und die anderen Geräte für diesen Prozess ausgeblendet werden.
Das bedeutet auch: Innerhalb dieses Prozesses kann ComfyUI trotzdem cuda:0 ausgeben. Das ist normal, wenn für diesen Prozess nur noch eine GPU sichtbar ist.
Schritt 3: Zwei Instanzen auf zwei GPUs starten
Nutze verschiedene Ports, damit sich die beiden Server nicht in die Quere kommen.
Instanz A:
python main.py --cuda-device 0 --port 8188Instanz B:
python main.py --cuda-device 1 --port 8189Dann öffne:
http://127.0.0.1:8188
http://127.0.0.1:8189Das ist das robusteste Multi-GPU-Muster für produktive Arbeit: eine Queue pro GPU.
Für dauerhaft parallele Nutzung getrennte user directories einplanen
Wenn beide Instanzen regelmäßig laufen, helfen getrennte --user-directory-Pfade dabei, Browser-Zustand, Tabs und Benutzereinstellungen sauber zu trennen.
Beispiel:
python main.py --cuda-device 0 --port 8188 --user-directory user-gpu0
python main.py --cuda-device 1 --port 8189 --user-directory user-gpu1Schritt 4: --default-device richtig einordnen
ComfyUI kennt auch --default-device. Dieses Flag setzt das Standardgerät, während andere Geräte sichtbar bleiben.
Das klingt attraktiv, ist aber nicht dasselbe wie automatische Multi-GPU-Ausführung. Nutze es nur dann, wenn dein Workflow, ein Custom Node oder ein fortgeschrittenes Setup bewusst mehrere sichtbare Geräte braucht.
Für die meisten Nutzer ist --cuda-device einfacher und verlässlicher.
Schritt 5: Multi GPU nicht als VRAM-Zaubertrick missverstehen
Wenn ein Workflow auf einer GPU wegen VRAM scheitert, macht eine zweite GPU dasselbe Modell nicht automatisch passend. Probiere zuerst:
- Auflösung reduzieren
- Batch-Größe senken
- andere GPU-intensive Programme schließen
- bei Bedarf quantisierte Modelle verwenden
- ComfyUI mit
--lowvramstarten - ein kleineres Modell oder einen leichteren Workflow nutzen
Für die systematische Diagnose siehe Python Out of Memory in ComfyUI.
Häufige Fehler
| Fehler | Warum es schiefgeht | Besserer Weg |
|---|---|---|
| Zwei Browser-Tabs auf demselben Server öffnen | Beide Tabs verwenden denselben ComfyUI-Prozess | Einen zweiten Prozess auf einem anderen Port starten |
--cuda-device 1 an der falschen Stelle einfügen | Das Flag wird nicht an main.py übergeben | Direkt hinter main.py platzieren |
| Erwarten, dass ein Workflow automatisch auf zwei GPUs verteilt wird | Standard-Nodes laufen meist auf einem gewählten Gerät | Zwei getrennte Queues oder spezialisierte Nodes verwenden |
Zwei Instanzen beide auf Port 8188 starten | Nur ein Prozess kann den Port besitzen | 8188 und 8189 verwenden |
| CPU-only-PyTorch installiert haben | ComfyUI kann keine NVIDIA-GPU nutzen | PyTorch mit CUDA neu installieren |
So prüfst du, ob das Setup stimmt
Lies nach dem Start die Ausgabe im Terminal. Du willst dort deine GPU nahe der Device-Zeile sehen:
Device: cuda:0 NVIDIA GeForce ...Beobachte dann nvidia-smi, während du etwas generierst. Wenn zwei Instanzen laufen, schicke einen kleinen Workflow in beide Queues und prüfe, ob beide GPUs Aktivität zeigen.
Wenn nur eine GPU arbeitet, prüfe:
- welchen Port dein Browser gerade nutzt
- ob beide Prozesse wirklich noch laufen
- ob jeder Startbefehl ein anderes
--cuda-devicehat - ob die zweite Instanz wegen Port-Konflikt gar nicht gestartet ist
Wie Wonderful Launcher dabei hilft
Wonderful Launcher ist dann sinnvoll, wenn du lieber mehrere stabile ComfyUI-Umgebungen betreiben willst statt einen fragilen Einzelordner:
- eine saubere GPU-0-Umgebung für Standardbilder
- eine separate GPU-1-Umgebung für Experimente oder Video-Nodes
- weniger Abhängigkeitskonflikte zwischen verschiedenen Queues
- funktionierende Workflows bleiben erhalten, bevor du Start-Flags änderst
Wenn du noch bei der Hardware-Wahl bist, beginne mit GPU Compatibility. Wenn ComfyUI zwar startet, der Browser aber ständig abreißt, lies ComfyUI Reconnecting Error.
Verwandte Leitfäden
- GPU Compatibility
- Python Out of Memory in ComfyUI
- ComfyUI Reconnecting Error
- ComfyUI Dependency Conflicts
Quellen
Wenn dieses Problem deine echte ComfyUI-Umgebung betrifft, starte mit Wonderful Launcher, prüfe den vorhandenen Rechner und nutze die Anleitung für die eigentliche Reparaturentscheidung.
Wonderful Launcher herunterladenDid this fix your issue?
Your answer helps prioritize verified ComfyUI repairs.
Wo kommen safetensors-Dateien in ComfyUI hin?
Finde den richtigen ComfyUI-Ordner für .safetensors-Dateien: Checkpoints, LoRAs, VAE, ControlNet, Flux-Diffusionsmodelle, Text-Encoder und Upscaler.
Preise und Credits erklärt
Verstehe, wie Credits funktionieren, was einzelne Funktionen kosten und welches Paket zu deinem Nutzungsprofil passt.