Nodes/ComfyUI_agilly1989_motorway/SamplerDPMPP_2M_SDE_motorway_edition
ComfyUI Node

SamplerDPMPP_2M_SDE_motorway_edition

The crowd-pleaser sampler, now riding a Motorway bus

By agilly1989·Created 2 years ago·Updated about a year ago· 7
SamplerDPMPP_2M_SDE_motorway_edition
  • MOTORWAY 🚌💨
  • MOTORWAY 🚌💨
solver_type
eta1.00
s_noise1.00
noise_device
OUTPUT_SAMPLER_keySAMPLER

If you've ever generated an image in ComfyUI and thought "DPM++ 2M Karras, 20 steps, done" - this is that sampler's slightly more refined cousin. SamplerDPMPP_2M_SDE_motorway_edition is a byte-for-byte clone of ComfyUI's built-in SamplerDPMPP_2M_SDE sampler node, wrapped so it runs on the Motorway data bus instead of ordinary wires.

One thing to get straight before anything else: this node doesn't draw anything. It's a sampler factory. It takes a model and hands back a SAMPLER object - the thing you plug into the sampler port of SamplerCustom. In an SD 1.5 or SDXL workflow, DPM++ 2M SDE is the "best of both worlds" pick: it's a convergent multistep solver (the 2M part, which settles into a stable image like plain 2M) with a controlled amount of stochastic SDE noise stirred in, which usually gets you a touch more texture and detail than bone-dry 2M for roughly the same step count. If the KB's "DPM++ 2M Karras is the safest default" line is your baseline, this is the node you swap in when you want the 2M reliability with slightly more life in the image.

What it does on the Motorway

The pack's whole gimmick is a named-key data bus it calls the Motorway (that purple MOTORWAY 🚌💨 socket). You start a bus with MotorwayStart, stash values under typed key names, and pull them back out later by the same name - the same "carry a bundle down one wire" idea as rgthree's Context nodes, but keyed by string instead of by port position. Every *_motorway_edition node is a generated clone of a built-in ComfyUI node re-plumbed for that bus: its non-widget inputs read from the bus by key, its outputs write back to the bus by key, and it always returns the bus so the chain can continue.

For this sampler, the knobs that stayed as normal widgets are:

  • solver_type - midpoint or heun. Midpoint is the default behavior most people use; heun is the more accurate (and slightly slower) integrator. Leave it on midpoint unless you're chasing every last bit of convergence.
  • eta (default 1.0) - the scale of the extra SDE noise. 1.0 is the standard; drop it if things look too noisy.
  • s_noise (default 1.0) - the amount of stochastic noise added per step. Lower toward 0 and the "SDE" part quietly disappears.
  • noise_device - gpu or cpu. GPU is faster and the default choice; switch to cpu if you're memory-constrained and want to offload the RNG work.

The model comes in from the bus under the same INPUT_…_key convention the whole family uses (the SDTurboScheduler edition in this same pack spells it out as INPUT_model_key, default model), and the finished sampler is parked back on the bus under your OUTPUT_SAMPLER_key (default SAMPLER). Point a later motorway node - a SamplerCustom_motorway_edition, say - at that key and it picks the sampler straight off the bus.

Installing it

This node ships inside ComfyUI_agilly1989_motorway; there's no standalone download. Easiest via ComfyUI Manager - search ComfyUI_agilly1989_motorway and install, then restart. Or from the terminal:

cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway

No extra Python dependencies, no model files. The pack is pure glue over ComfyUI's own nodes.

The catch

You may install this, search for SamplerDPMPP_2M_SDE_motorway_edition, and find nothing in the menu. That's not you. The current release (1.1.7) ships with the clone mechanism switched off - a "HOTFIX - REMOVED MONKEYPATCH" commit commented out the two ClonedNodeMapping lines in custom_nodes/ComfyUI_agilly1989_motorway/__init__.py. Uncomment both, restart, and the whole *_motorway_edition family appears. The README is also disarmingly honest: it opens with "BIG BROKEN WITH ASYNC WILL FIX WHEN I GET THE TIME/MOTIVATION" and calls the project an active beta, and the author warns that nodes with custom JS and true output nodes may not work. This is an experimental pack from a solo dev, not battle-tested infrastructure - fun to tinker with, but don't put your whole production graph on it yet.

Categoryagilly1989 Nodes/Motorway-ed/sampling/custom_sampling/samplers

Inputs (6)

NameTypeDefaultDescription
solver_typeCOMBO2 options: midpoint, heun
etaFLOAT1.000–100
s_noiseFLOAT1.000–100
noise_deviceCOMBO2 options: gpu, cpu
OUTPUT_SAMPLER_keySTRINGSAMPLER
MOTORWAY 🚌💨optMOTORWAY 🚌💨

Outputs (1)

NameTypeDescription
MOTORWAY 🚌💨MOTORWAY 🚌💨