Files
ausboss-ComfyUI-AusBoss/js/docs/AUSBOSS_NODES_FreeMemory.md
T
ausboss 3f715a4af8 Ship the crush-list build-out: 7 new node files, replace button, video and LoRA polish
- New nodes: Image Resize plus the Utility group (Text, Integer, Float,
  Show Text, Math Expression, Select Every Nth, Split Batch, Merge
  Batches, Free Memory) - the dependency-free gaps that let shared
  workflows drop heavy packs.
- Replace with AusBoss nodes (prototype): preview-then-confirm graph
  rewrite swapping known third-party nodes for pack equivalents, with a
  tested translation map, per-node opt-out, and refuse-with-reason for
  nodes the pack cannot stand in for.
- Load Video: single-frame FRAME picker, an honest "what will load"
  label from the probed source rate, drop-a-video-to-restore. Save
  Video: format-aware widgets and a file_path output. Stitch Inpaint
  gained a blend_mask output, Select Frame negative from-the-end
  indexing, Image Size a batch count - all appended, saved workflows
  load unchanged.
- LoRA Loader: drag-to-reorder rows, hover thumbnails on rows, file
  size and date in the info card.
- Appearance: flagship scheme deepened to slate-teal; the retired
  bright-teal pair upgrades automatically via LEGACY_SCHEME_PAIRS.
  Optional queue-completion chime, off by default.
- Image Resize invariant: pixels are only invented on an explicit
  width+height pad request - scale-derived modes resolve divisible_by
  snaps with a sub-half-step resize, never bars.
- Docs refreshed for six stale pages, stale text and metadata fixed
  across the pack, the panel-height rule codified in AGENTS.md and the
  brand skill, and ausboss_node_tour.json added - a model-free example
  exercising 17 node types in one graph.

Validated: scripts/validate_nodes.py (24 files), 300 JS tests, all
Python suites under the ComfyUI embedded interpreter.
2026-08-27 13:30:35 -05:00

1.4 KiB

Free Memory

Passes any wire through unchanged and, on the way, releases what can be released: comfy's cached models are unloaded, Python garbage is collected, and the CUDA allocator cache is emptied. Put it between a heavy stage and the next — after a video decode, before an upscale — so the second stage starts with free VRAM 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

  • 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.