basic_Ksampler_low_gpu
For when it's the VAE decode running you out of VRAM, not the sampler
- context
- image
- context
- image
Here's a genuinely common confusion: your sampling steps run fine, VRAM usage looks reasonable the whole time - and then it blows up right at the end, decoding the final latent back into pixels. That's not a sampler problem, it's a VAE decode problem, and it's exactly what this node exists to fix. Notice what's not in its required fields: no steps, no cfg, no sampler, no scheduler - this node leans on the context for the actual sampling settings and spends its own field budget entirely on tiled decoding.
What tiled decoding actually buys you
Instead of decoding the whole latent to pixel space in one shot (which is where the VRAM spike happens on large images or long video clips), this node decodes in overlapping tiles: tile_size (default 512) sets how big each tile is, and overlap (default 64) controls how much adjacent tiles share, which is what prevents visible seams at the tile boundaries. For video specifically, temporal_size (default 64) and temporal_overlap (default 8) do the same job along the time axis - decoding a clip in chunks of frames instead of all at once, again with overlap so the seams between chunks don't show. Both video-specific fields carry tooltips confirming this explicitly: "Only used for video VAEs."
The inputs and outputs that matter
Required: context, seed, denoise (0-1, default 1), tile_size, overlap, temporal_size, temporal_overlap, and image_output. image is the one optional input. Outputs are lean - context and image - same shape as basic_Ksampler_adv. In practice you'll set tile_size/overlap once and rarely touch them again unless you're still hitting VRAM limits, in which case shrinking tile_size further (at some cost to how long the decode takes) is the lever to pull.
Installing it
Search "ComfyUI-Apt_Preset" in ComfyUI Manager, or:
cd ComfyUI/custom_nodes
git clone https://github.com/cardenluo/ComfyUI-Apt_Preset.git
Run install.bat on Windows (pip install -r requirements.txt on Linux/Mac), restart. No extra dependencies - this wraps ComfyUI's own tiled VAE decode.
Common issues
The general VRAM math is worth keeping in mind before you reach for this node at all: GPU memory bandwidth runs roughly 11x faster than PCIe, so trying to work around an out-of-memory error by offloading to system RAM instead of genuinely reducing the decode's memory footprint is usually a much slower fix than it looks - tiling the decode, which is what this node actually does, is the better lever. If you're still hitting OOM with default tile settings, drop tile_size before you touch anything else; the overlap fields matter for seam quality but rarely for whether the decode fits in memory at all. And if your OOM is happening during sampling rather than at the final decode step, this isn't the right node to reach for - that's a model/resolution/batch-size problem the tiled decode here doesn't touch, since it only shrinks the VAE step, not the diffusion steps themselves.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| context | RUN_CONTEXT | — | |
| seed | INT | 00–18446744073709550000 | — |
| denoise | FLOAT | 1.000–1 | — |
| tile_size | INT | 51264–4096 | — |
| overlap | INT | 640–4096 | — |
| temporal_size | INT | 648–4096 | Only used for video VAEs: Amount of frames to decode at a time. |
| temporal_overlap | INT | 84–4096 | Only used for video VAEs: Amount of frames to overlap. |
| image_output | COMBO | Preview | 4 options: Hide, Preview, Save, Hide/Save |
| imageopt | IMAGE | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| context | RUN_CONTEXT | — |
| image | IMAGE | — |