Nodes/DemonAlone-nodes-ComfyUI/Tiled Upscaler (experemental)
ComfyUI Node

Tiled Upscaler (experemental)

DIY tiled-diffusion upscaling in one node (author calls it experimental)

By DemonAlone·Created 7 months ago·Updated 22 days ago· 3
Tiled Upscaler (experemental)
  • model
  • vae
  • positive
  • negative
  • image
  • upscale_model_opt
  • IMAGE
upscale_factor2.0
tile_size512
overlap64
seed0
steps20
cfg7.00
denoise0.20
sampler_name
scheduler
preview_freq1
force_full_tilestrue

The node's own display name is "Tiled Upscaler (experemental)" - typo included, straight from the author. Read that as an honest label, not a knock: this is a from-scratch implementation of an idea the community already has two well-established answers for - Ultimate SD Upscale and Tiled Diffusion + Tiled VAE. Both split a large image into overlapping tiles, run diffusion on each tile separately, and blend the seams, which is how you get arbitrary output resolution without blowing your VRAM budget on one giant denoise pass. This node does the same job as a single self-contained node instead of a multi-node stack, but it doesn't have the track record those two do - no ControlNet Tile guidance built in, no years of community testing behind it.

What it does

You feed it a model, vae, the image you're upscaling, and positive/negative conditioning - same core inputs as a KSampler, because that's essentially what's running under the hood, just tiled. upscale_factor (1–4x) sets how much bigger the output is. tile_size (default 512) is how big each chunk is before blending, and overlap (default 64) is how much neighboring tiles share - raise overlap if you see seams between tiles. steps, cfg, sampler_name, and scheduler control the diffusion pass on each tile exactly like they would on a normal KSampler. denoise defaults to a conservative 0.2 - on the low end of the typical hi-res-fix range, which keeps the pass detail-adding rather than composition-changing; raise it if you want the upscale to actually invent more than it's currently doing.

Two smaller controls worth knowing: force_full_tiles (default on) pads edge tiles out to the full tile_size so the denoise strength behaves consistently at the image's edges instead of weakening on partial tiles, and preview_freq controls how often the live preview updates during the run - higher numbers mean less UI overhead, lower means you see progress more often.

There's also an optional upscale_model_opt slot for an ESRGAN-style upscale model. Wire one in and this becomes a proper two-stage pipeline - a fast, non-generative pixel upscale first, then the tiled diffusion pass adds detail on top, which is the standard "more pixels, then more detail" pattern rather than asking the diffusion pass to do both jobs alone.

Installing it

ComfyUI Manager: search DemonAlone-nodes-ComfyUI, install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/DemonAlone/SimpeStringGenerator_ComfyUI

No model downloads bundled - you supply your own model, VAE, and optionally an upscale model, same as any sampling node.

Where people get burned

tile_size is your main VRAM lever: smaller tiles use less memory but mean more seams to blend and a slower overall run; overlap adds compute per tile, so pushing it up to fix visible seams costs render time. If you skip upscale_model_opt, you're asking pure diffusion to do the whole size increase, which is slower and rougher than pre-scaling with a real ESRGAN model first.

Given this is labeled experimental by its own author and has essentially no community track record, treat it as something to test on a throwaway image before trusting it on a real job. If it doesn't hold up, Ultimate SD Upscale or Tiled Diffusion + Tiled VAE (paired with ControlNet Tile for guided results) are the community-proven versions of the same idea.

CategoryImage Processing/Upscale

Inputs (17)

NameTypeDefaultDescription
modelMODEL
vaeVAE
upscale_factorFLOAT2.01–4
tile_sizeINT51264–2048
overlapINT640–256
seedINT00–18446744073709550000
stepsINT201–100
cfgFLOAT7.000–100
denoiseFLOAT0.200–1
positiveCONDITIONING
negativeCONDITIONING
sampler_nameCOMBO44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
schedulerCOMBO9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
imageIMAGE
preview_freqINT11–100How often to update the preview (e.g., 2 for every other step)
force_full_tilesBOOLEANtruePad edge tiles to full tile_size for consistent denoise effect
upscale_model_optoptUPSCALE_MODEL

Outputs (1)

NameTypeDescription
IMAGEIMAGE