Nodes/comfy-multigpu-loader/Flux Loader Debug (All-In-One)
ComfyUI Node

Flux Loader Debug (All-In-One)

The Flux loader with a pink-square heartbeat test

By AngelCookiesLab·Created 9 months ago·Updated 9 months ago· 2
Flux Loader Debug (All-In-One)
    • model
    • clip
    • vae
    • test_image
    • status
    ckpt_nametest_mode
    num_gpus2
    test_modefalse
    gpu_ids0,1,2,3
    clip_name1<auto>
    clip_name2<auto>
    clip_loader_typeflux
    vae_name<auto>
    log_vram_snapshotfalse
    safety_oktrue

    Flux Loader Debug (All-In-One) is the diagnostic version of the pack's headliner - Flux Loader (All-In-One) - with the same Flux defaults (auto-detected clip_l/t5 text encoders, ae.safetensors VAE, CLIP on CPU, dual-block Flux transformer sharded across your GPUs) plus the debug toolkit. And since the README openly calls the Flux loaders "early/less tested," this is the version you should actually start with.

    What the debug mode adds

    The test_mode toggle (or the test_mode entry in the ckpt_name dropdown) runs the pack's synthetic smoke test instead of loading real models. It creates a tensor on each selected GPU, confirms each tensor is genuinely resident on the card it claims, and checks memory allocation. All cards respond → a hot-pink "✓ MultiGPU Success!" test_image; any dead card → a gray image naming the failure. You also get dummy CLIP/VAE objects so a test graph can run end to end without a real model.

    Why do this before a Flux load specifically? Because the checkpoint you're about to load is huge, and there's no better way to learn "GPU 2 can't allocate" than from a 30-second synthetic test instead of a five-minute load that dies at 90%.

    log_vram_snapshot is the other big one: it records per-GPU VRAM usage in GB before and after the shard layout is applied, straight into the status string. When a Flux load claims multi-GPU but only card 0's VRAM moved, that snapshot is your proof.

    Inputs and outputs

    Same inputs as the production Flux loader - ckpt_name, num_gpus, gpu_ids, clip_name1/clip_name2, clip_loader_type (fixed flux), vae_name, safety_ok - plus test_mode and log_vram_snapshot. Outputs are model, clip, vae, test_image (IMAGE), and status (STRING with the full diagnostic report).

    Model files

    Same set as the production loader: Flux checkpoint in models/checkpoints/, clip_l.safetensors + t5xxl_fp8_e4m3fn_scaled.safetensors in models/text_encoders/, ae.safetensors in models/vae/. Missing pieces get called out, not silently skipped.

    Installing it

    Part of Comfy-MultiGPU-Loader. ComfyUI Manager search "Comfy-MultiGPU-Loader", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/AngelCookiesLab/Comfy-MultiGPU-Loader
    pip install -r requirements.txt
    

    Restart, look under MultiGPU/Debug.

    Reality check

    Keep expectations calibrated: the author's verified win is Flux Dev Full fp32 (~22GB) across 4×RTX 3070s over PCIe, and Flux Dev 2 (~60GB) is still unverified. The project is sunset - as-is, GPL-3.0, no active support, diagnostics that can under-report on later runs. This node's job is to tell you whether your cards are up to that bet before you commit the disk time and VRAM to finding out.

    CategoryMultiGPU/Debug

    Inputs (10)

    NameTypeDefaultDescription
    ckpt_nameCOMBOtest_modeCheckpoint to load from ComfyUI models/checkpoints.
    num_gpusCOMBO2How many GPUs to allocate (use Auto for all available).
    test_modeBOOLEANfalseRun synthetic smoke test instead of loading real models.
    gpu_idsoptSTRING0,1,2,3Comma separated GPU indices in execution order.
    clip_name1optCOMBO<auto>Primary text encoder file (leave <auto> to use checkpoint embedded CLIP).
    clip_name2optCOMBO<auto>Secondary/paired text encoder file.
    clip_loader_typeoptCOMBOflux1 options: flux
    vae_nameoptCOMBO<auto>External VAE to use when checkpoint does not bundle one.
    log_vram_snapshotoptBOOLEANfalseRecord per-GPU VRAM usage before/after layout for troubleshooting.
    safety_okoptBOOLEANtrueConnect to Hardware Validator; loading aborts when false.

    Outputs (5)

    NameTypeDescription
    modelMODEL
    clipCLIP
    vaeVAE
    test_imageIMAGE
    statusSTRING