32 of the ? help pages checked against the code and corrected. Wrong claims fixed: Stitch Inpaint's empty-area check (20/255), what a new video keeps on both Video Crop + Rotate + Pad pages, Load Video's frame picker and player height, where Run Timer lists earlier runs, inpainting on the Krea 2 Outpaint Model Patch page, Workflow Note's banner layout and pack detection, Image Resize's pad bars and mask, Save Image's path preview and tags, Free Memory's steps, and Latent Size's sockets. Image Crop + Rotate + Pad now follows the node from top to bottom; the saved values no row shows moved under Technical details. Controls are named the way the node shows them, with the input name beside. Pages that opened with jargon now open with what the node does and when to use it. LoRA Loader gained the Civitai lookup, suggested strength and the gear options it did not name.
1.4 KiB
1.4 KiB
Free Memory
Passes anything through unchanged and frees graphics memory on the way. Put it between two heavy steps — after a video decode, before an upscale — so the second one starts with free memory instead of an out-of-memory error.
Controls
- value: Any wire — the node's input and output are wildcard-typed, so
it splices into an
IMAGE,LATENT,MODEL, or any other connection without adapters.
Output
- value: The input, passed through unchanged.
Behavior
- What it frees, in order: ComfyUI's loaded models are unloaded, ComfyUI's own cache is emptied, Python garbage is collected, and the CUDA allocator cache is emptied.
- Every release step is best-effort. If ComfyUI moves or renames one of the APIs involved, that step is skipped and the wire still flows; the node never becomes the reason a workflow fails. What was actually freed is printed to the console each run.
- The comfy imports happen when the node runs, not when the pack loads, so a core change surfaces as a skipped step rather than deleting the node from the menu.
- Like any node, it only runs when its input changes — it does not force re-execution, so inserting it never breaks ComfyUI's caching downstream. Freeing happens on the runs where work actually flows through.
- Models unloaded here are reloaded by the next node that needs them; that reload costs time, which is the trade for the freed VRAM.