FlashVSR is one of the best video super-resolution models you can run locally, but if you’ve pushed it past ~1080p in ComfyUI you know how it ends: CUDA out of memory. Full-frame 4K wants ~45 GiB of VRAM — almost nobody has that.
My fix: a free, open-source FlashVSR node that probes your actual free VRAM before rendering and auto-tiles the canvas to fit whatever card you have — then stitches the tiles back with zero visible seams. 100% local, installs from the Manager — search “FlashVSR Video Upscale”.
**What it does**
- Auto-sizes to YOUR card: it measures free VRAM before each run and shrinks tile sizes to fit. 24 GB card → 4K at 19.96 GiB peak, ~61 s. 16 GB card → 1080p as two 1.2 MP strips instead of OOM. Your other loaded models only get evicted when the card genuinely can’t fit a tile
- VIDEO in / VIDEO out ComfyUI node — drop it after your video source, pick a target resolution, done
- Triton/FP8 kernels for the DiT blocks: ~1.3x vs stock FlashVSR at the official 1408×768 workload (11.5 → 15.0 FPS median). No CUDA toolkit needed — Triton JIT-compiles at runtime
- Above ~2.2 MP tiling kicks in automatically (no extra inputs): 4K (3840×2048, 85 frames) renders as 5 overlapping strips blended back seamlessly
- Install: Manager → search “FlashVSR Video Upscale”, or git clone into custom_nodes. First run downloads ~6.5 GB of FlashVSR weights
**Quality**
I gate every change with LPIPS ≤ 0.05 vs the stock pipeline. On the tiled path, tiled-vs-full PSNR is 31.6 dB (the SR pipeline is generative so runs differ in noise), and seam-column error peaks *below* the frame’s global max — no visible seam signature in practice. Contact sheets are in the repo.
**Honest limits**
- Targets sm_89 (RTX 40 series). FP8 needs Ada or newer. I don’t have non-40xx hardware to test, so 16 GB-card users: the auto-sizing path is verified in simulation, real-world feedback very welcome
- VRAM still scales with clip length — the numbers above are ~3 s / 85-frame clips. Trim longer videos first
- It’s a super-resolution pass, not magic: garbage in, sharp garbage out
**Workflow**
A minimal workflow JSON is in the repo at comfyui/workflows/flashvsr_minimal.json — load it, point it at your video, set target resolution. That’s it.
Benchmark JSONs, methodology and repro commands are all in the repo. Questions welcome — especially curious how it behaves on 16 GB cards and on real footage vs my test clips.