Nodes/ComfyUI-DiT360Plus/DiT360 Pipeline Unloader
ComfyUI Node

DiT360 Pipeline Unloader

A node that does almost nothing except free your VRAM — use it anyway

By thomashollier·Created 7 months ago·Updated 3 months ago· 3
DiT360 Pipeline Unloader
  • pipeline

    Let's be honest about what this node is: it takes your DIT360_PIPELINE in, holds its breath for a moment, and frees GPU memory. No outputs. That's the whole job. It's the least glamorous node in the pack and also the one that keeps your card from slowly filling up with an abandoned 12B FLUX pipeline.

    Why does that matter here specifically? The Flux Panorama Loader builds a real diffusers FluxPipeline - text encoders, transformer, VAE, scheduler, the lot. When you finish a generation and hit run again with a different workflow, ComfyUI doesn't always tear that down cleanly, because the pipeline lives inside its own Python object and isn't part of ComfyUI's normal model cache. A couple of workflow swaps later you're looking at 15GB of resident VRAM that nothing asked for, and the next run OOMs in a way that makes no sense.

    How to use it

    Wire the pipeline output from Flux Panorama Loader into this node. It's marked as an output node (OUTPUT_NODE = True), so it always executes, and since it has no outputs you can hang it off the end of the graph without disturbing anything:

    Flux Panorama Loader ──> DiT360 Text to Panorama ──> 360 Edge Blender
            └──────────────> DiT360 Pipeline Unloader
    

    That parallel wire is a ComfyUI pattern worth knowing: an output node at the end of a side branch forces that branch to run every time, which is exactly what you want for a cleanup step.

    What it actually does

    The source is three lines with a big effect:

    del pipeline
    gc.collect()
    torch.cuda.empty_cache()
    

    It drops the reference, forces a Python garbage-collect, and empties the CUDA cache. It prints [DiT360Plus] Pipeline unloaded, GPU memory freed. in the console so you can confirm it ran.

    The honest caveats

    • It only frees the one pipeline you wire in. Run the FLUX path and then a Qwen-Image workflow in the same session and you're managing two separate heavy things - unload each.
    • It won't help mid-generation. This is a between-runs hygiene tool, not a magic 16GB-on-a-3060 solution. If you're OOMing during denoising, the fix is still the loader's offload mode, not this node.
    • ComfyUI's own --disable-smart-memory and model management do some of this for you, which is why a dedicated unloader feels redundant - until it isn't.

    That's the whole article, and honestly that's the node. There's a real argument that you don't need it on a 24GB card in a fresh session. But once you've ever had a mystery OOM from a half-freed pipeline, you'll just drag one onto every DiT360Plus workflow and never think about it again.

    CategoryDiT360Plus/pipeline

    Inputs (1)

    NameTypeDefaultDescription
    pipelineDIT360_PIPELINE

    Outputs (0)

    No outputs