ComfyUI Node Runs on cloud

XY Input: Steps

Steps

By jags111·Created 3 years ago·Updated 4 months ago· 1,485
XY Input: Steps
    • X or Y
    target_parameter
    batch_count3
    first_step10
    last_step20
    first_start_step0
    last_start_step10
    first_end_step10
    last_end_step20
    first_refine_step10
    last_refine_step20

    "How many steps do I actually need?" is one of the first questions everyone asks and one of the last they answer well, because the honest response is "depends on your sampler and model, so test it." XY Input: Steps does the testing - it sweeps a range of step counts and grids the results, so you can watch the image converge and spot the point where more steps stop buying you anything. It's part of the Efficiency Nodes XY Plot system.

    How it works

    Step count is how many denoising iterations the sampler runs. Too few and the image is undercooked; past a certain point it just converges and extra steps are wasted compute. Where that point sits depends heavily on the sampler - a modern dpmpp_2m converges fast, while distilled Turbo/Lightning models are done in 4-8 - so a plot is the right tool.

    target_parameter decides which step value you sweep, because the advanced sampler has more than one:

    • steps - total step count. The everyday choice.
    • start_at_step / end_at_step - for multi-stage sampling, where a pass runs only part of the schedule. These control where a stage begins and ends.
    • refine_at_step - the step where an SDXL refiner takes over (the step-count equivalent of the refiner handoff).

    Whichever you pick, the matching first_/last_ pair sets the range - first_step/last_step for total steps, first_start_step/last_start_step for the start point, and so on. batch_count sets how many values to test.

    The inputs and outputs

    • target_parameter - which step value to sweep.
    • batch_count plus the relevant first_/last_ pair - resolution and range.

    Output is X or Y (type XY) into the XY Plot node, which plugs into an Efficient KSampler's script input. The start_at_step/end_at_step/refine_at_step targets only mean something on the advanced or SDXL Efficient samplers.

    Installing it

    ComfyUI Manager → search Efficiency Nodes for ComfyUI, install, restart. Or:

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

    Restart ComfyUI. No downloads.

    Common issues

    Match the target to the sampler. Plotting steps works anywhere, but start_at_step, end_at_step, and refine_at_step are multi-stage / advanced concepts - sweep them against a plain Efficient KSampler and nothing happens. Use the advanced or SDXL variant.

    The interpretation trap: a step plot that looks identical across the whole range usually means your sampler already converged at the low end (common with dpmpp_2m or a distilled model), so you're testing a range that's all past the useful point. Drop first_step lower to actually see the undercooked-to-converged transition.

    And the universal XY Input rule: no plot renders unless the output reaches the XY Plot node and, through it, an Efficient KSampler - a stock KSampler won't run it.

    Pack-wide: IMPORT FAILED at startup (the recurring pip freeze non-zero exit) drops the whole pack and this node with it. Update ComfyUI, update the node, verify the Python environment.

    CategoryEfficiency Nodes/XY Inputs

    Inputs (10)

    NameTypeDefaultDescription
    target_parameterCOMBO4 options: steps, start_at_step, end_at_step, refine_at_step
    batch_countINT30–50
    first_stepINT101–10000
    last_stepINT201–10000
    first_start_stepINT00–10000
    last_start_stepINT100–10000
    first_end_stepINT100–10000
    last_end_stepINT200–10000
    first_refine_stepINT100–10000
    last_refine_stepINT200–10000

    Outputs (1)

    NameTypeDescription
    X or YXY