Nodes/ComfyUI-WanVideoWrapper/WanVideo EasyCache
ComfyUI Node Runs on cloud

WanVideo EasyCache

Skip redundant Wan steps — but not with speed LoRAs

By kijai·Created about a year ago·Updated 2 months ago· 6,651
WanVideo EasyCache
    • cache_args
    easycache_thresh0.015
    start_step10
    end_step-1
    cache_deviceoffload_device

    EasyCache is a speedup that works by being lazy in a smart way: across a diffusion run, consecutive steps often produce nearly identical output, so instead of computing every step in full, it reuses ("caches") a previous result when the change is small enough. It's the same family as TeaCache and MagCache - a step-skipping cache - sourced from the H-EmbodVis/EasyCache project and wired into WanVideoWrapper as a native node.

    If you've used TeaCache for Wan, you already know the pitch: moderate speedup, minor quality hit, no extra model. EasyCache is the newer sibling. Whether it's worth it is genuinely mixed - one community answer to "do you use EasyCache/MagCache in Wan 2.2?" was blunt that "they didn't give me much speedup." So treat it as a lever to test on your own hardware and settings, not a guaranteed win.

    How it works

    During sampling, EasyCache watches how much the model's output is changing between steps. When the change falls under a threshold, it decides the step is redundant and reuses the cached result rather than running the full transformer forward pass - that's where the time saving comes from. Skip too eagerly and you smear motion and lose detail; skip conservatively and you barely save anything. The node hands the sampler a CACHEARGS bundle describing when and how aggressively to do this.

    The inputs that matter

    • easycache_thresh (default 0.015) - the whole ballgame. Higher = more steps get skipped = faster, but more quality loss (softer motion, mushier detail). Lower = safer, slower. Nudge it up until you see the output degrade, then back off.
    • start_step (default 10) - don't start caching until this step. The early steps set up composition and motion, so it's deliberately conservative about touching them. Leave it unless you know why you're moving it.
    • end_step (default -1) - where to stop caching; -1 means run to the end.
    • cache_device (offload_device / main_device) - where the cached tensors live. Default offload_device keeps them off your GPU (saves VRAM); switch to main_device only if you've got VRAM headroom and want to shave the transfer overhead.

    The output is cache_args (CACHEARGS) - plug it into the sampler.

    How to install it

    ComfyUI Manager: search ComfyUI-WanVideoWrapper, install, restart. Manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/kijai/ComfyUI-WanVideoWrapper
    pip install -r ComfyUI-WanVideoWrapper/requirements.txt
    

    then restart. No model download - it's pure caching logic.

    Common issues & troubleshooting

    Don't stack it on a speed LoRA. This is the big one. Caches and step-distillation accelerators (LightX2V, CausVid) don't play together - the community guidance is explicitly that you shouldn't use these caches with accelerators, and speed LoRAs already cut you to a handful of steps, so there's almost nothing left for a cache to skip. Pick one acceleration path. Caching earns its keep on full-quality, many-step runs, which is exactly where speed LoRAs aren't in the graph.

    Barely faster. As above, some users see little speedup. It depends heavily on step count, resolution, and threshold. If it's not helping, raise easycache_thresh a notch and re-measure - or accept it's not the right lever for your settings.

    Face consistency wobbles. Caching skips real computation, and the known tradeoff with TeaCache-style caching is that faces drift a little; disabling the cache improves face consistency at the cost of speed. If identity matters more than minutes, lower the threshold or turn it off.

    CategoryWanVideoWrapper

    Inputs (4)

    NameTypeDefaultDescription
    easycache_threshFLOAT0.0150–1How strongly to cache the output of diffusion model. This value must be non-negative.
    start_stepINT100–9999Step to start applying EasyCache
    end_stepINT-1-1–9999Step to end applying EasyCache
    cache_deviceCOMBOoffload_deviceDevice to cache to

    Outputs (1)

    NameTypeDescription
    cache_argsCACHEARGS