DDRK Omega Scheduler
The DDRK Omega Scheduler in practice
- model
- SIGMAS
The DDRK Omega Scheduler is the quiet half of the pack: it doesn't denoise anything. Give it a model and a step count and it hands back a SIGMAS schedule you feed into a sampler - typically the pack's own DDRK Omega Sampler via SamplerCustom, or anything else that takes a SIGMAS input. If that's all you needed to hear, the answer to "why bother" is the schedule list, because it's built around the single most confusing fact in modern diffusion: the sampler rules split by architecture.
Why nine schedulers instead of a dropdown
Karras and exponential schedules are the classics for SD 1.5/SDXL - they concentrate denoising effort in the middle steps and genuinely improve lower step counts there. On flow-matching models (Flux, SD3, Qwen, and friends) that redistribution is a distortion, not a correction, which is why the "don't use Karras on Flux" rule became folklore. So this node splits its nine schedulers by family:
ddrk_auto- picks per family and step count. This is the recommended default and the one you should leave on.- FM-only:
ddrk_cosine,ddrk_beta,ddrk_flow_linear,ddrk_flow_cosmos,ddrk_fewstep(the last is an aggressive shift for 4-8 step distilled runs). - EDM-only:
ddrk_edm_karras(rho=7),ddrk_edm_poly,ddrk_edm_simple.
The node reads the model's sigma_max to know which family it's on, so the same ddrk_auto works whether you're rendering SDXL or Flux.
The inputs that matter
modelandsteps- the two you can't avoid.scheduler_type- setddrk_autoand forget it, unless you're chasing a specific look.flow_shift- the flow-matching shift knob (default 3); it controls how sampling effort splits between composition and detail. This is the FM replacement for "choosing a scheduler" and it's model-specific, so treat it as something to tune, not set once.beta_a/beta_b- shape parameters used only byddrk_beta, and the node's party trick: it exposes them in the UI. The defaults A=2, B=1 give Karras-like monotonically shrinking steps. Raising B above ~2 shifts resolution toward high sigma and leaves a big final step, which is usually undesirable. Fun fact from the changelog:ddrk_betaused to raiseNotImplementedErrorbecause PyTorch's Beta distribution has no inverse CDF - 1.6.0 replaced it with the closed-form Kumaraswamy inverse, and these two params became reachable at all.warmup_steps- 0 to 5 leading steps, off by default.auto_optimize- on by default; it auto-selects scheduler andflow_shiftfor FM few-step runs. Disable it when you want full manual control, because otherwise it can override what you picked.
Output is a single SIGMAS wire.
Installing it
It's part of the DDRK Omega pack, which has no dependencies beyond ComfyUI itself and needs no model downloads:
cd ComfyUI/custom_nodes/
git clone https://github.com/HVOSTOVSKY/DDRK-Omega-Sampler.git
Restart ComfyUI. Or use ComfyUI Manager and search "DDRK Omega Sampler".
Gotchas
- If you set
beta_bhigh and wonder why the tail looks broken - that's the expected behavior, not a bug. Keep B low. auto_optimizesilently taking over your FM schedule choice confuses people constantly. If shift seems to do nothing, check it first, then check whether your scheduler even usesflow_shift(the tooltips say which params each scheduler ignores).- The schedules were all exercised on real generations but have no automated tests - the README says so plainly.
ddrk_autois the safe path.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | Auto-detects FM vs EDM by sigma_max | |
| steps | INT | 201–1000 | — |
| scheduler_type | COMBO | ddrk_auto | 9 options: ddrk_auto, ddrk_cosine, ddrk_beta, ddrk_flow_linear, ddrk_flow_cosmos, ddrk_fewstep, +3 |
| flow_shift | FLOAT | 3.01–10 | — |
| warmup_steps | INT | 00–5 | — |
| beta_a | FLOAT | 2.00.1–10 | Shape parameter A, used only by ddrk_beta. Higher A front-loads larger steps at high sigma and leaves finer steps near sigma 0. Ignored by every other scheduler. |
| beta_b | FLOAT | 1.00.1–10 | Shape parameter B, used only by ddrk_beta. Raising B above ~2 shifts resolution toward high sigma and leaves a large final step, which is usually undesirable. A=2, B=1 gives Karras-like monotonically shrinking steps. |
| auto_optimize | BOOLEAN | true | Auto-select scheduler & flow_shift for FM few-step. Disable for full manual control. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SIGMAS | SIGMAS | — |