SamplerLCMDualNoise
Two denoisers running at once
- SAMPLER
Read the README's update log and you'll see the author lose his composure: after adding SamplerLCMDualNoise he calls the other samplers in the pack "obsolete" and claims it works "stunningly well" on original SD 1.5 plus an LCM LoRA at CFG 1.0 with only a positive prompt. That's hype, and hype from the person who wrote the code, so take it with salt - but the idea behind the node is genuinely the most interesting one in the pack. Instead of alternating between Euler and LCM steps, it runs both denoisers at every step and blends their predictions with a weighted average. One pass through the model is the "Euler-style" denoise; a second pass denoises a fresh-noise version of the previous result, the "LCM" half; and the two predictions get mixed before the next step. Two model calls per step, but you can often get away with far fewer steps than plain LCM.
The inputs that matter
weight(FLOAT, default 0.8) - the blend between the two denoisers. At 0.0 both run in full; at 1.0 it degenerates into plain Euler, which is a useful way to sanity-check that your pipeline is wired right. The author's experimentally-found sweet spot is 0.66-0.95, and it moves with step count: roughly 0.95 at 50 steps, 0.8 at 16, 0.66 at 4. This step-dependence is the node's one genuine annoyance.normalize_steps(INT, default 0) - runs the model this many times at the very first sigma, re-scaling the noise each pass, with the goal of nudging your initial random noise toward what the model saw during training. This is a txt2img thing only; the author is explicit that img2img doesn't need it and you should leave it 0 there.reuse_lcm_noise(BOOLEAN, default false) - when true, every LCM half reuses the same noise instead of drawing fresh noise per step. Results get sharper, and it's mainly for img2img where you want fine detail added to an existing scene rather than wholesale reinterpretation.parallel(BOOLEAN, default false) - sequential mode (default) has the LCM half denoise the Euler half's output, then blends. Parallel mode has both denoisers work from the previous combined step instead. Parallel is more aggressive about re-blending and worth a try once you've found a weight you like; most people never need it.
Output is a SAMPLER for a CustomSampler node, paired with LCMScheduler for the sgm_uniform schedule.
Installing it
# ComfyUI Manager: Manager → Install Custom Nodes → search "ComfyUI-sampler-lcm-alternative" → Install → Restart
# or:
cd ComfyUI/custom_nodes
git clone https://github.com/jojkaart/ComfyUI-sampler-lcm-alternative
# restart ComfyUI
No dependencies, no downloads. The repo includes a SamplerLCMDualNoise-workflow.png example and a sample generation if you want a proven starting point.
The catch
Cost, and tuning friction. Two denoisers per step means roughly double the compute of a plain sampler per step - the speed win only materializes if you're actually using fewer steps, and at 4 steps with the weight around 0.66 it does deliver. The step-dependent weight is the real wart: change your step count and you're re-tuning. The author's next node, SamplerLCMDuoFusion, exists specifically to fix that by making the weight adaptive, so it's a fair question whether you should just start there. Worth knowing regardless: the community's real-world uses of this pack tend to sit at CFG 1.0 with 4-8 steps on distilled workflows, and the README's standing advice to add a RescaleCFG node and push CFG toward 3.0 applies here more than anywhere - that's where DualNoise's extra passes really pay off.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| weight | FLOAT | 0.8000–1 | — |
| normalize_steps | INT | 00–50 | — |
| reuse_lcm_noise | BOOLEAN | false | — |
| parallel | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SAMPLER | SAMPLER | — |