Nodes/ComfyUI_Eclipse/Any Passer Purge
ComfyUI Node

Any Passer Purge

A pass-through node that empties your VRAM on the way past

By r-vageΒ·Created 10 months agoΒ·Updated a day agoΒ· 31
Any Passer Purge
  • input
  • output
β—„Purge_VRAMfalseβ–Ί

Any Passer Purge is Any Passer - the do-nothing, any-type passthrough - with one extra checkbox that makes it do something: Purge_VRAM. When the flag is on, the node calls Eclipse's VRAM purge before passing the value along, unloading every ComfyUI-managed model and clearing the accelerator caches. It's a "drop anchor, empty the hold, keep sailing" node, and it exists for one specific, real problem: you've just finished a heavy stage and the next stage is about to load something big.

Where you'd actually drop one

Think of the typical two-stage workflow: generate a batch of images, then upscale or re-run the best ones. After the sampler, the checkpoint is still resident, the VAE is still resident, everything is warm - and then the upscale stage tries to load a 5GB model onto a card that's already full. ComfyUI usually evicts on its own, but "usually" is doing a lot of work, and on a small card the eviction can come too late, producing an OOM where a clean slate would have been fine.

Placing Any Passer Purge on the wire between the two stages and ticking Purge_VRAM turns the transition into an explicit memory barrier: models are unloaded, caches are cleared, and the next stage starts from zero. The data it carries is untouched - the purge is a side effect, not a transform.

Inputs and behavior

  • input - the any-type value being passed through.
  • Purge_VRAM - boolean, default False. On, it purges before passing.
  • Output - the passed-through value, or None if the input was empty.

The purge is cheap to reason about: it runs when the node executes, which is exactly when the previous stage is done. Same None-safe passthrough logic as the plain passer.

The honest recommendation

This is a niche tool. If you never see OOMs at stage transitions, you don't need it - the plain Any Passer does the same job without the reload tax, because purging means the next run has to reload everything it wants. Use it when (a) you're on a tight GPU, (b) you can name a specific heavy-load boundary in your graph, and (c) you've actually seen the failure it prevents. It's a fix, not a fashion.

Installing it

Part of ComfyUI_Eclipse, installed once:

cd ComfyUI/custom_nodes
git clone https://github.com/r-vage/ComfyUI_Eclipse

Restart ComfyUI (or ComfyUI Manager β†’ search "ComfyUI Eclipse"). No extra dependencies.

Gotchas

The pack-wide note applies: ComfyUI_Eclipse was formerly RvTools, and v4.0.0 removed all legacy nodes - old workflows need the Workflow Migration Tool node (or python tools/migrate_workflow.py <workflow.json>) to rewrite old IDs with a backup. And remember the flag is off by default; if you're surprised your "purge" node didn't purge, check the checkbox.

CategoryπŸŒ’ Eclipse/ Router

Inputs (2)

NameTypeDefaultDescription
inputCOMFY_MATCHTYPE_V3Any input to be passed through.
Purge_VRAMBOOLEANfalseIf enabled, purges VRAM and unloads all models before passing latent.

Outputs (1)

NameTypeDescription
outputCOMFY_MATCHTYPE_V3The passed-through output.