Nodes/RocM Ninodes/ROCm VAE Performance Monitor
ComfyUI Node

ROCm VAE Performance Monitor

Ask it what your VAE settings should be

By iGavroche·Created 11 months ago·Updated a day ago· 43
ROCm VAE Performance Monitor
  • vae
  • DEVICE_INFO
  • PERFORMANCE_TIPS
  • OPTIMAL_SETTINGS
test_resolution1024

ROCm VAE Performance Monitor is the VAE-side version of the pack's sampler adviser: it takes a VAE, figures out what kind it is and what GPU it's running on, and returns three STRING outputs telling you what settings to use. Wire them into Show Text nodes and you get a readable explanation of your decode setup. Like its sampler sibling, it's an analysis tool, not a benchmark - nothing is actually decoded.

It's filed under ROCm Ninodes/VAE.

How it works

The node runs the pack's shared architecture detection (gfx1151/RDNA 3.5 APU, RDNA 3, RDNA 2, CDNA, or CPU) and classifies your VAE using the same logic the ROCm VAE Decode node uses to pick its behavior. Then it explains what it found:

  • DEVICE_INFO - device, VAE dtype, output device, detected VAE type, architecture, APU mode, GPU name. The fastest way to confirm what ComfyUI is actually loading.
  • PERFORMANCE_TIPS - type-specific advice. An LTX Video VAE (128-channel, 32× spatial compression) gets told fp16 is strongly recommended, to use tile sizes in the 1024–2048 range, to process videos in one causal pass, and to enable temporal tiling for videos over ~200 frames. A pixel-space VAE gets the "no actual decoding needed" reminder. An APU box gets a note that its batch is capped to prevent over-allocation.
  • OPTIMAL_SETTINGS - concrete recommended values for tile size, overlap, precision, and (for video) temporal chunking, derived from your test_resolution input.

That last one is worth being precise about: test_resolution (default 1024) doesn't trigger a test - per the README it's "just for recommendations," and it nudges the suggested tile sizes up and down. It's a hint about what resolutions you normally decode at, not a measurement.

The inputs that matter

Just vae and test_resolution. Set test_resolution near the size you actually decode at (1024 for typical Flux stills, higher if you upscale a lot) and read the three outputs. If you run multiple VAEs - an SD VAE and an LTX one, say - swap them through and compare; the contrast between a standard VAE's advice and the LTX advice is the most instructive thing this node can show you.

Installing it

Part of ROCm Ninodes - ComfyUI Manager, search rocm-ninodes, or:

cd ComfyUI/custom_nodes
git clone https://github.com/iGavroche/rocm-ninodes.git

then restart; v1.x installs run uv run python tools/upgrade_to_v2.py once. Dependencies are the pack's standard light set (numpy, Pillow, psutil, gguf, safetensors) on a ROCm PyTorch build.

The honest version

This node is best treated as a guided tour of your decode setup, not a truth machine. The recommendations are heuristics baked into the code - sensible ones, grounded in this pack's LTX/WAN experience, but they're starting points. The genuinely useful output is DEVICE_INFO: when a video decode goes wrong and you're not even sure which VAE ComfyUI loaded, this tells you in one glance. For the settings themselves, trust it as far as you'd trust a well-informed friend, then tweak from there.

CategoryROCm Ninodes/VAE

Inputs (2)

NameTypeDefaultDescription
vaeVAEVAE to monitor
test_resolutionINT1024256–4096Test resolution for benchmarking

Outputs (3)

NameTypeDescription
DEVICE_INFOSTRING
PERFORMANCE_TIPSSTRING
OPTIMAL_SETTINGSSTRING