🐳WanVideo Reset Block Swap
Clear stale block-swap state without rebuilding your workflow
- any_input
- any_output
If you've run Wan 2.2 locally, you know the drill: big 14B/27B MoE model, tight VRAM, and someone's workflow has a block-swap node sitting between the loader and the sampler. Block swapping - the technique of shuttling transformer blocks between GPU and CPU RAM mid-inference to fit bigger models - is genuinely useful (the KB's LoRA-training doc covers the same trick in the training context), but the ComfyUI ecosystem around it has been a mess. Third-party Wan block-swap nodes have broken after Comfy updates, and the community's been arguing about whether you even need them since Comfy added native memory management. This node is the Pond pack's answer to the cleanup side of that mess: it resets stale block-swap state so a workflow that's been polluted by leftover settings doesn't crawl or stall.
What it actually does is narrow and mechanical. It takes a single any_input (typed as *, so anything can flow through), checks whether it looks like a Comfy model (has clone() and model_options), and if so:
- clones the model so it doesn't mutate your original
- deletes
block_swap_argsfrom the model'stransformer_options - moves all transformer parameters back onto the main device
- resets the
use_non_blockingflag
Then it passes the cleaned model (or your original input, if it wasn't a model) straight through the any_output port. It's a pass-through node by design - wire your Wan model through it, and whatever comes out is the same model minus the stale swap config.
When does this actually help? Real scenario, and one the community hits constantly: you load a shared Wan workflow that had block-swap settings baked into its model_options, run it once, then swap in a different workflow - and suddenly inference sticks at 0%, or VRAM acts wrong, because leftover swap state is still attached. Rather than hunting through the graph for the node that set it, you thread your model through this reset. The corpus is full of Wan users hitting exactly this "stuck at 0% / works until I switch workflows" pattern, and a surprising number of the answers end in "clear the block-swap state." This is that, as a node.
The honest take, and I'll be blunt: this is a niche maintenance node, and for most people the real fix is upstream. If your Wan setup runs fine with Comfy's native memory management (which, per community consensus, handles block swapping internally), you don't need this at all. It's for the workflows that came with a block-swap node and left residue behind. If you don't have that specific problem, skip it - it does nothing for a clean graph.
Also note the any_input/any_output typing means it can sit inline anywhere without breaking the graph - that's the intended usage, not a limitation.
Install
Part of Pond Nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/Pondowner857/comfy_Pond_Nodes
cd comfy_Pond_Nodes
pip install -r requirements.txt
Restart after (or Manager → "comfy_Pond_Nodes"). No model files, no optional deps - it uses only Comfy's model_management module. Pack caveat: console spam if comfyui_HiDream-Sampler is installed alongside.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| any_input | * | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| any_output | * | — |