DiffusersLoaderDisTorch2MultiGPU
Split a HuggingFace Diffusers pipeline across devices
- MODEL
- CLIP
- VAE
The DisTorch2 twin of DiffusersLoaderMultiGPU. Same model_path, pointed at a HuggingFace Diffusers-format folder - subdirectories for unet/, text_encoder/, vae/, rather than one packed .safetensors file - but with the split-across-devices toolkit instead of a single whole-pipeline pin.
Why you'd reach for this specifically
You've got a model that only ships as a Diffusers repo - no single-file conversion exists yet - and it's too big to pin wholesale to any one device you have available. The plain DiffusersLoaderMultiGPU can't fit it anywhere; this node's partial offload can.
That's a fairly narrow intersection - Diffusers-only and too big to pin whole - but it does happen. Research-preview releases and some video/3D models land as Diffusers pipelines well before (or instead of) a single-file community conversion, and those tend to be exactly the large, VRAM-hungry models where offloading matters most in the first place.
How it works
Same pattern as the rest of the DisTorch2 family: compute_device, virtual_vram_gb (default 4), donor_device, expert_mode_allocations, eject_models (default true). The split targets the diffusion weights - the biggest component of the pipeline by far - the same way it does on CheckpointLoaderSimpleDisTorch2MultiGPU; CLIP and VAE ride along without their own separate offload controls.
The inputs and outputs that matter
model_path- the Diffusers-format folder.compute_device,virtual_vram_gb,donor_device,expert_mode_allocations,eject_models- the DisTorch2 controls, as above.- Outputs: MODEL, CLIP, VAE - all three, same as any full checkpoint-style loader, since a Diffusers pipeline bundles the same three components in subfolders instead of one file.
How to install it
ComfyUI Manager: search ComfyUI-MultiGPU, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/pollockjj/ComfyUI-MultiGPU
then restart. No extra dependencies.
Common issues & troubleshooting
Empty model_path dropdown. Same requirement as the plain loader - you need an actual Diffusers-layout directory (with unet/, text_encoder/, vae/ subfolders) in the expected models location, not a bare filename. An empty dropdown means the folder isn't there yet, not that the node is broken.
This is a rare node in practice. safetensors won the single-file distribution format years ago, so most large models you'd want to offload today have a proper split UNet+CLIP+VAE release you can run through UNETLoaderDisTorch2MultiGPU, CLIPLoaderDisTorch2MultiGPU, and VAELoaderMultiGPU instead - each with more granular, independent control than this bundle node offers.
Same virtual_vram_gb tuning advice as everywhere else in the DisTorch2 family. Start near the default, watch the console's memory-budget summary at load time, and only push higher if the run genuinely still doesn't fit.
Don't reach for this before checking if a single-file build exists. A quick search for the model name plus "safetensors" or "GGUF" on HuggingFace or Civitai often turns up a community conversion that lets you skip the Diffusers-folder route entirely and use the more flexible split loaders instead.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| model_path | COMBO | 0 options: | |
| compute_deviceopt | COMBO | cpu | 1 options: cpu |
| virtual_vram_gbopt | FLOAT | 4.00–128 | — |
| donor_deviceopt | COMBO | cpu | 1 options: cpu |
| expert_mode_allocationsopt | STRING | — | |
| eject_modelsopt | BOOLEAN | true | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |
| CLIP | CLIP | — |
| VAE | VAE | — |