TRELLIS.2 HiCache Accelerate
The HiCache Accelerate node
- model
- model
Image-to-3D is the last place most people put up with slow sampling, and TRELLIS.2 is both the best open option and the heaviest. Microsoft's model already wins on geometry - cleaner topology, better handling of holes and thin parts than Hunyuan3D - but a full run can chew through 16GB+ of VRAM and every sampling step calls a multi-billion-parameter DiT. This node doesn't train anything and doesn't swap the model. It just makes the sampler skip most of those calls and forecast what the DiT would have said. Same mesh, about 1.9x faster.
What it actually does
TRELLIS.2 samples each stage with a flow-Euler loop: denoise over ~20 steps, run the transformer once (or twice under CFG) per step. TRELLIS.2 HiCache Accelerate replaces those flow DiTs with a wrapper that runs the real transformer on a schedule and predicts the velocity on the steps in between. That's the whole trick - "training-free acceleration" via feature caching, the same family as TaylorSeer and HiCache (arXiv:2508.16984).
You get three methods:
hermite- classic HiCache: fit a dual-scaled Hermite polynomial to cached velocity anchors and extrapolate.dmd- HiCache++: Dynamic Mode Decomposition on a Prony/exponential basis. Theoretically exact for the near-linear feature-ODE class, so it stays accurate at wider skip intervals where the polynomial drifts.auto- holdout-selected per compute step: serve DMD only where it demonstrably beats Hermite on the cached window.
Two TRELLIS-specific details are handled for you, which is where a naive port would silently break. TRELLIS's timestep schedule runs 1 -> 0 (run boundaries are detected by direction reversal, not a fixed threshold), and classifier-free guidance issues the conditional and unconditional forwards separately - so the patch keeps two parallel forecast states instead of corrupting one. The SLaT stages return sparse tensors, so it forecasts on the .feats matrix and rebuilds the tensor from the last computed step.
A nice ComfyUI touch: the patch is copy-on-write. It never mutates the pipeline it's handed, which matters because ComfyUI caches node outputs keyed on inputs. And the author is the same person who wrote the underlying hicache-pp library (they posted the HiCache++ Show HN on r/StableDiffusion), so this isn't a wrapper around someone else's half-understood code.
The inputs that matter
It sits in the middle of your pipeline: (TRELLIS2 loader) -> TRELLIS.2 HiCache Accelerate -> (TRELLIS2 sampler). One input, one output, both of type TRELLIS2PIPELINE.
interval(default 2) - run the DiT once every N steps, forecast the rest. This is the one you tune. 2 is the sweet spot: near-lossless (~0.01 Chamfer distance on the author's RTX 5090 test) at ~1.9x. Higher skips trade fidelity for more speed.method(defaulthermite) - switch todmdif you push the interval up;autois the "trust me" option.stages(defaultboth) -bothaccelerates sparse-structure + shape SLaT, i.e. geometry.allalso accelerates texture synthesis. If you only want the biggest win,shapealone is a reasonable first test.warmup_steps(default 2) - always compute the first N steps of each run before forecasting begins. Leave it.enabled- flip to Off to remove the patch and restore the stock DiTs. Your instant A/B switch.
The optional sigma, dmd_history, and max_order are the DMD tuning knobs. Don't touch them until you're chasing the last 5% and actually reading the paper.
Install
ComfyUI Manager can do it: search ComfyUI-TRELLIS2-HiCache and hit install, which handles the one pip dependency. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Archerkattri/ComfyUI-TRELLIS2-HiCache
pip install hicache-pp
Then restart ComfyUI. Two things the README assumes you already know:
- This node is dead without the companion pack. The
TRELLIS2PIPELINEtype it consumes comes from visualbruno/ComfyUI-Trellis2. No pipeline type, no connectable wires. Install that too. - The models are on you. TRELLIS.2's checkpoints (4B and 0.5B) are multi-gigabyte downloads that the companion pack fetches. This node adds zero model files.
Where people get burned
Mostly, this is early-adopter territory: the pack is new, single-node, and the measured numbers are from one RTX 5090 at the 512 pipeline with the 4B model. Expect slower relative gains on a smaller card, and don't treat interval 3+ as free. The built-in escape hatch is your friend - keep enabled toggled Off once to confirm the stock run still works before you trust the accelerated one.
If the node refuses to connect, the culprit is almost always the missing visualbruno pack, not this one. If you cloned manually and hit ModuleNotFoundError: hicache-pp, you skipped the pip install - Manager does it for you, the raw git clone doesn't.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| model | TRELLIS2PIPELINE | — | |
| method | COMBO | hermite | 3 options: hermite, dmd, auto |
| interval | INT | 21–10 | Run the DiT once every `interval` steps; the rest are forecast. 2 is near-lossless (~2x, ~0.01 Chamfer). |
| stages | COMBO | both | both = sparse-structure + shape SLaT (shape generation); all also accelerates texture synthesis; or pick a single stage. |
| warmup_steps | INT | 20–10 | Always compute the first N steps of each run before forecasting begins. |
| enabled | BOOLEAN | true | Off removes the patch and restores the stock TRELLIS.2 DiTs. |
| sigmaopt | FLOAT | 0.500.05–0.95 | — |
| dmd_historyopt | INT | 53–16 | — |
| max_orderopt | INT | 11–4 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model | TRELLIS2PIPELINE | — |