ComfyUI Node Runs on cloud

XY Input: Denoise

Denoise

By jags111·Created 3 years ago·Updated 4 months ago· 1,485
XY Input: Denoise
    • X or Y
    batch_count3
    first_denoise0.00
    last_denoise1.00

    Denoise is one of those settings where the "right" value is entirely situational and the only reliable way to find it is to try a few. This node automates that: it sweeps a range of denoise values and drops them onto an XY Plot grid so you can see, side by side, exactly where a pass stops adding detail and starts rewriting your image. It's part of the Efficiency Nodes XY Plot system.

    Denoise matters most in two places: img2img, where it controls how far the model drifts from your input, and hires-fix / second-pass upscaling, where too much denoise repaints the composition and too little does nothing. The community rule of thumb for a hires pass lives around 0.3–0.5 - high enough to add coherent detail, low enough to keep the picture. This node is how you find your number instead of borrowing someone else's.

    How it works

    It's about as simple as an XY Input gets. You give it three widgets and it hands the KSampler a list of denoise values to run.

    • batch_count - how many values to test across the range (default 3).
    • first_denoise - the low end of the sweep (default 0).
    • last_denoise - the high end (default 1).

    The node evenly spaces batch_count values between first and last and outputs them as a single X or Y connection. "X or Y" is literal - you decide which axis it lands on by wiring it into the corresponding input of the XY Plot node.

    One practical note on the defaults: a sweep starting at first_denoise 0 wastes a cell, because denoise 0 changes nothing. For a hires or img2img comparison you'll usually want to set the range to something like 0.2 to 0.7 so every tile in the grid is actually informative.

    What you actually wire up

    Really just batch_count and the two range values. The output goes to the XY Plot node (X or Y input), and that node feeds the script input on an Efficient KSampler. Pair it on the other axis with something like XY Input: Steps or XY Input: CFG Scale and you get a full denoise-vs-steps matrix in one execution.

    Installing it

    Easiest path is ComfyUI Manager - search Efficiency Nodes for ComfyUI, install, restart. Manual install:

    cd ComfyUI/custom_nodes
    git clone https://github.com/jags111/efficiency-nodes-comfyui
    

    Restart ComfyUI afterward. No extra model downloads are needed for this node specifically.

    Common issues

    The universal XY Input catch: on its own, this node produces nothing visible. Its output has to travel through the XY Plot node and into one of the pack's Efficient KSamplers - a vanilla KSampler won't run the script. If your grid never renders, that broken chain is almost always why.

    Beyond that, the usual denoise sanity checks apply and aren't really node bugs: if every cell in your grid looks identical, your range is probably too narrow or too low; if the composition falls apart at the high end, that's denoise doing its job, not the node misbehaving.

    Pack-wide, if Efficiency Nodes fails to import at startup (a pip freeze error that flips the whole pack to IMPORT FAILED is the classic one), this node vanishes with the rest. Update ComfyUI and the node together, and confirm your Python env is intact.

    CategoryEfficiency Nodes/XY Inputs

    Inputs (3)

    NameTypeDefaultDescription
    batch_countINT30–50
    first_denoiseFLOAT0.000–1
    last_denoiseFLOAT1.000–1

    Outputs (1)

    NameTypeDescription
    X or YXY