Nodes/ComfyUI/SplitSigmasDenoise
ComfyUI Node Runs on cloud

SplitSigmasDenoise

Split your denoise budget in two and give each half its own sampler

By Comfy-Org·Created 4 years ago·Updated about an hour ago· 129,820
SplitSigmasDenoise
  • sigmas
  • high_sigmas
  • low_sigmas
denoise1.00

Most people never touch the sigmas-manipulation nodes, because KSampler's denoise slider already covers "how much of this schedule do I run?" SplitSigmasDenoise is what you graduate to when you want to answer a weirder question: what if the first half of the schedule ran with a different sampler than the second half?

The slider can't do that. This node can.

How it works

A SIGMAS schedule is a list of noise levels, one per step boundary, running high to low. SplitSigmasDenoise cuts that list in two at a denoise value, the same way KSampler interprets its own denoise slider - except instead of discarding the part it skips, it hands you both halves as separate outputs.

Mechanically it's dead simple: total_steps = round(steps * denoise), then high_sigmas is the front of the schedule and low_sigmas is the back. Nothing is resampled or recomputed - it's a pure data operation on the tensor.

The inputs and outputs

  • sigmas (SIGMAS) - the schedule you want to cut.
  • denoise (FLOAT, 0–1, default 1.0) - where the cut lands.
  • high_sigmas and low_sigmas outputs - wire each into its own sampler, or keep high_sigmas for the first pass and feed low_sigmas to a second node entirely.

The classic pattern: run high_sigmas with a converging sampler like DPM++ 2M to lock in composition, then run low_sigmas with an ancestral or detail-heavy sampler to add texture without wrecking the structure. You're effectively doing img2img's "two-phase" workflow, but with each phase getting the sampler that suits it.

Common issues

  • At denoise 1.0, high_sigmas is empty. That's not a bug - a denoise of 1 means the whole schedule is "low." If you wire that empty tensor into a sampler expecting to draw, you'll get nothing or an error. When you see an empty sigma output, the answer is usually that you grabbed the wrong half.
  • Counting steps. A schedule of N steps has N+1 sigma values. denoise rounds against the step count, so a 20-step schedule at 0.75 gives you 15 steps in the low half and 5 in the high half - the boundaries aren't where you'd naively expect by eyeballing the slider.
  • Inverted split. If your second phase comes out looking like the first, you likely wired the halves backwards. high_sigmas is the noisy, structure-forming part; low_sigmas is the finishing pass.

It's not a node you'll use every day, but when you're debugging why your img2img refines poorly, splitting the schedule and giving each half an appropriate sampler is often the fix - and this is the node that makes the split visible.

Categorymodel/sampling/sigmas

Inputs (2)

NameTypeDefaultDescription
sigmasSIGMAS
denoiseFLOAT1.000–1

Outputs (2)

NameTypeDescription
high_sigmasSIGMAS
low_sigmasSIGMAS