LC Speed Boost 🚀 KSampler (BETA)
The half-resolution trick as a one-node drop-in
- model
- positive
- negative
- latent_image
- sampler
- positive_half
- LATENT
The one you actually want if you're on a plain KSampler
There are two nodes in this pack doing the same thing. LC Speed Boost is a SAMPLER wrapper for people running split-sigma, two-sampler graphs - you feed it a sampler and it gives one back. This is the version for everybody else: a KSampler with the trick built in. Delete your KSampler, drop this in its place, rewire the same four wires.
What you buy for that: the early layout steps run at half resolution, so this pass costs roughly half the time for the same VRAM and, per the author, the same detail. The mechanism is the SPEED trick - shrink the starting state by keeping the low part of its cosine spectrum, run the layout steps small, then pad back to full size with fresh noise in the new high-frequency band and resume at the matching noise level. No blurry-upscale-then-recover, which is why the picture holds up.
What you set
The first four inputs are the ordinary KSampler ones and behave identically: model, positive, negative, latent_image. Output is a single LATENT - straight into VAE Decode, where your KSampler's latent came from.
Then the two that are new:
- speed_boost - leave it on
auto. Speed Boost picks its own switch step from the schedule, which is the setting the author benchmarked as the sweet spot. - grow_at_step - used when
speed_boostis ongrow_at_step(i.e. you turned auto off). The step at which it switches to full resolution. Here's the nice part:grow_at_step0 with auto off is a plain KSampler, pixel for pixel. That's your A/B switch without swapping nodes - flip it, generate, flip it back.
After that it's the standard rack: seed, steps, cfg, sampler_name, scheduler, denoise. The sampler list is ComfyUI's own 44 names - plus, if RES4LYF is installed, its ClownShark samplers show up in the same dropdown. There's also an optional sampler input, the interesting one for tinkerers: wire a ClownSampler into it and its own settings (eta, for instance) take over from sampler_name.
start_at_step, end_at_step and return_with_leftover_noise work like KSampler (Advanced), which is how you build the two-pass setup: stop this node early with the noise left in, then finish with a regular sampler or a ClownShark one - noise off, starting at the step you stopped on. Since half the world's interesting sampler work now happens in RES4LYF, that hand-off is a genuinely useful escape hatch rather than a checkbox.
When it quietly behaves like a normal KSampler
It won't pretend. This node samples exactly like a plain KSampler - no boost - for inpaint masks, for SDXL-family models (their schedule isn't flow-matching, so the premise doesn't apply), for image-to-image with denoise under 0.9 (the layout comes from your image) and when start_at_step is above 0, because the picture is already past the layout steps by then.
The models it's built for are the flow-matching ones: Krea 2, Z-Image, Flux.2 Klein, Qwen-Image, Wan.
And the thing to internalise before you use it: the layout is worked out at lower resolution, so a seed frames differently with the boost on. Your saved seeds are not portable across this node's on/off state. If you have a seed you love, either generate with the boost off or expect to re-hunt.
Install
ComfyUI Manager → ComfyUI_LC123_nodes. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/lonecatone23/ComfyUI_LC123_nodes.git
Restart ComfyUI. The pack: MIT, one author (lonecatone23, the CivitAI creator behind synth.studio.models), 141 Python nodes plus 5 JS-only ones - the kind of pack that doesn't generate anything, it just removes friction from graphs you already have.
Two install notes, both pleasant: there's no requirements.txt, so nothing pip-installs and no dependency can break your other packs, and RES4LYF is optional - you get the ClownShark names if it's there and the normal list if it isn't. If no nodes appear, __init__.py isn't directly inside ComfyUI/custom_nodes/ComfyUI_LC123_nodes/; the console prints [LC123] + per module when the structure is right.
Is it real?
It's BETA, and the technique behind it has a reputation worth knowing: the standalone community port of SPEED reports occasional artifacts and semantic drift on some outputs. This version hardens that - it always returns to full size before the run ends, and it bows out where it can't help - but check it on your model before you set it and forget it.
Which is easy, because the pack gives you the measuring stick too. The LC Speed Boost Test.json example workflow puts this node and the wrapper version side by side on the same prompt with a group bypasser to choose, plus an LC Timer to score each run. Do the same at home: same prompt twice, grow_at_step 0 and then auto, and look at the images rather than the seconds.
Inputs (19)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | The model used for denoising the input latent. | |
| positive | CONDITIONING | What you want in the image. | |
| negative | CONDITIONING | What you want out of the image. | |
| latent_image | LATENT | The latent to denoise. | |
| speed_boost | BOOLEAN | true | auto = Speed Boost picks the switch step from the schedule (about 2x faster, same quality). grow_at_step = set it yourself below. |
| grow_at_step | INT | 40–200 | Used when speed_boost is on grow_at_step: the step where it switches to full resolution. 0 = a plain KSampler. |
| _gap1 | STRING | Layout spacer | |
| seed | INT | 00–18446744073709550000 | The random seed used for creating the noise. |
| steps | INT | 101–10000 | The number of steps. |
| cfg | FLOAT | 1.00–100 | How closely it follows the prompt. |
| sampler_name | COMBO | The sampling algorithm. ClownShark (RES4LYF) samplers are listed too when RES4LYF is installed, and a ClownSampler Selector can be wired in. | |
| scheduler | COMBO | How the noise is removed over the steps. | |
| denoise | FLOAT | 1.000–1 | 1 = a new picture. Lower = image to image (Speed Boost steps aside under 0.9). |
| _gap2 | STRING | Layout spacer | |
| start_at_step | INT | 00–10000 | Start partway through the steps, like KSampler (Advanced). Above 0, Speed Boost steps aside (the picture is already past the layout steps). |
| end_at_step | INT | 100000–10000 | Stop at this step. Hand the rest to another sampler with return_with_leftover_noise on. |
| return_with_leftover_noise | BOOLEAN | false | enable = stop at end_at_step with the noise left in, for a regular or ClownShark sampler to finish (add_noise off, start_at_step = this end_at_step). |
| sampleropt | SAMPLER | Optional. A ClownSampler (or any SAMPLER) with its own settings, like eta. Replaces sampler_name. | |
| positive_halfopt | CONDITIONING | Optional positive for the half-size steps. Speed Boost does not work on MOSS Image. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |