Nodes/IAMCCS-nodes/HW Supporter (auto VRAM/attention/torch knobs)
ComfyUI Node

HW Supporter (auto VRAM/attention/torch knobs)

One node that sets your VRAM headroom, attention, and torch knobs — or leaves them alone

By IAMCCS·Created 11 months ago·Updated 7 days ago· 113
HW Supporter (auto VRAM/attention/torch knobs)
  • model
  • clip
  • vae
  • model
  • clip
  • vae
  • report_json
profileauto
apply_reserved_vramtrue
reserved_vram_modemanual
reserved_vram_gb1.25
sage_attentionauto
allow_sageattention_torch_compilefalse
torch_compile_modeoff
fp16_accumulationauto
tf32auto
clean_gpu_beforefalse
console_logtrue
include_hardware_reportfalse

IAMCCS_HwSupporter is a MODEL patch node that bundles five hardware tweaks people normally scatter across half a dozen other packs into one place: reserved VRAM, SageAttention, torch.compile, fp16 accumulation, and TF32. You drop it between your model loader and your sampling chain, it applies whatever you asked for to that model, and it passes the model through unchanged. If your only problem is "my video render OOMs," this is often a faster fix than rebuilding your whole low-VRAM workflow.

The honest framing up front: it's a convenience wrapper, not magic. Everything it touches you could do yourself with ComfyUI's low-VRAM settings, EXTRA_RESERVED_VRAM, and env vars. What it buys you is a single widget set that decides based on what it probes - including profiles like 12GB_VRAM_32GB_RAM, low_vram, balanced, and max_speed that map to sane starting values without you knowing the numbers.

How it works

At execution it probes your GPU (total VRAM, RAM), picks recommended values for the chosen profile, then applies the effective settings to the model as a patch. The auto profile is conservative: if you leave reserved_vram_gb at 0 it chooses a safe value for you. reserved_vram_mode offers manual (use reserved_vram_gb, default 1.25 GB) or auto_used_plus, which mirrors the ReservedVRAMSetter behavior of setting EXTRA_RESERVED_VRAM = used_vram + headroom.

The attention and compile knobs are where you have to exercise judgment, because they depend on your stack:

  • sage_attention (default auto): enables a SageAttention attention override for massive speedups on some cards. It's a soft dependency - if the sageattention package isn't installed, the node should warn and fall back rather than hard-fail, so it's safe to leave on auto.
  • torch_compile_mode (default off): the tooltip is unusually honest - auto tries reduce-overhead, but on Windows this can be unstable depending on your Torch build and driver. If you see random crashes and you've enabled this, turn it off first. That's the single most common "this pack broke my ComfyUI" report, and it's almost always this setting.
  • fp16_accumulation and tf32 default to auto and are worth leaving alone until a specific render tells you otherwise.

include_hardware_report adds a deeper probe to the report_json output if you want the full diagnostic, and clean_gpu_before does a model-unload + cache flush before patching (useful when a previous render left a mess, at the cost of a reload stall).

Inputs and outputs

Required: model plus the settings above. Optional: clip and vae - plug them in and they ride through untouched, so you can keep your graph tidy. Outputs: patched model, clip, vae, and a report_json STRING summarizing what was applied and any warnings. That JSON is the first place to look when a render still OOMs: it tells you what it actually did versus what you thought you asked for.

Installing it

It's part of the IAMCCS-nodes pack - install once, get every IAMCCS node. ComfyUI Manager → search IAMCCS, or:

cd ComfyUI/custom_nodes
git clone https://github.com/IAMCCS/IAMCCS-nodes.git

Restart ComfyUI; the node sits under IAMCCS/HW. No pip requirements ship with the pack. README baseline: ComfyUI ≥ 0.3.0, Python ≥ 3.12, Torch ≥ 2.8.

Where people get burned

The classic setup mistake is putting the node after a sampler already ran, or on a branch that isn't the one actually sampling. It patches the model instance you hand it - wire the output into the KSampler or the Animate/LTX chain. And if you're chasing the last bit of VRAM headroom, the README's PyTorch allocator advice still applies and must be set before launching ComfyUI:

export PYTORCH_ALLOC_CONF="backend:cudaMallocAsync"
CategoryIAMCCS/HW

Inputs (15)

NameTypeDefaultDescription
modelMODEL
profileCOMBOauto5 options: auto, 12GB_VRAM_32GB_RAM, low_vram, balanced, max_speed
apply_reserved_vramBOOLEANtrue
reserved_vram_modeCOMBOmanualmanual: uses reserved_vram_gb | auto_used_plus: sets EXTRA_RESERVED_VRAM = (used_vram + auto_headroom_gb), like ReservedVRAMSetter
reserved_vram_gbFLOAT1.250–24Reserved VRAM in GB (manual mode). If profile=auto and this is 0, the node chooses a conservative value.
sage_attentionCOMBOauto8 options: disabled, auto, sageattn_qk_int8_pv_fp16_cuda, sageattn_qk_int8_pv_fp16_triton, sageattn_qk_int8_pv_fp8_cuda, sageattn_qk_int8_pv_fp8_cuda++, +2
allow_sageattention_torch_compileBOOLEANfalse
torch_compile_modeCOMBOoffauto = try torch.compile with a safe mode (reduce-overhead). On Windows this may still be unstable depending on Torch/driver; if you see crashes, set off.
fp16_accumulationCOMBOauto3 options: auto, on, off
tf32COMBOauto3 options: auto, on, off
clean_gpu_beforeBOOLEANfalse
console_logBOOLEANtruePrint a short summary (applied + warnings) in the server console.
include_hardware_reportBOOLEANfalseIf enabled, probes current hardware and embeds an additional recommendations report into report_json (useful for printing/debug).
clipoptCLIP
vaeoptVAE

Outputs (4)

NameTypeDescription
modelMODEL
clipCLIP
vaeVAE
report_jsonSTRING