Method
What we tested and how
Conditions for every figure on this page: physical GPU 0 was an RTX 3060 12GB; Proxmox VE VM 100 had 16 vCPU, 47.05 GiB RAM and no swap; ComfyUI 0.31.0 used PyTorch 2.13.0+cu130; the official R2V template loaded Ref2VA pruned INT8 at 864×480 for 124 frames at 24fps, 20 steps, res_multistep, simple, denoise 1, with the seed fixed at 20260814; Turbo LoRA and SageAttention were not enabled.
Only one cache node was installed at a time. After each node the directory was deleted and the container restarted, because several of these nodes patch model methods and a stale patch would carry into the next measurement. The ComfyUI core file list, 284 Python files, was re-checked after every round and never changed.
| Baseline run | Wall time | Peak VRAM | Peak system RAM |
|---|---|---|---|
| Run A | 596.9 s | 11,433 MiB | 43,488 MiB |
| Run B | 597.0 s | 11,679 MiB | 43,546 MiB |
| Run C, after a config change | 597.2 s | 11,305 MiB | 43,626 MiB |
Three baseline runs landed within 0.3 seconds of each other and produced identical video data. Every speed-up on this page is measured against 597.0 seconds.
The check nobody publishes
How to tell a cache node is actually working
A cache node can install cleanly, appear in the menu, and do nothing. There is a way to catch that, and it costs one extra run.
Run the same workflow twice with a fixed seed and no cache node, and confirm both runs produce the same video data. Then add the cache node and compare again. Caching works by skipping part of the computation, so it must change the numbers. If the video data is unchanged, the node is loaded but is not touching the computation, whatever its description claims.
Compare the video data, not the whole file. ComfyUI writes the output filename prefix into the MP4 metadata, so two identical runs saved under different names produce different file checksums. Our two baseline runs had byte-identical video data and identical file sizes, yet different whole-file checksums, with the first difference at byte 9090 inside the metadata. Comparing whole files would have marked every node on this page as working.
The practical form of the check: extract the mdat box, which holds the encoded frames, and hash that. Or give every run the same output prefix and let ComfyUI number the files. Both work; the first one can be re-checked afterwards on files you have already saved.
Phase one
Install results
All eight were cloned, loaded and checked against the running /object_info list. Seven registered nodes. The names below are the registered API names, which are frequently not the names in the README.
| Repository | Commit | Registered node | Loads |
|---|---|---|---|
HELPMEEADICE/TE-Speed-MiniMaxH3-OSS | c1dacf47 | TESpeedMiniMaxH3 | Yes, patch step failed |
duckyshell/ComfyUI-MiniMaxH3-FirstBlockCache | 725973c3 | ApplyMiniMaxH3FirstBlockCache | Yes |
lihaoyun6/ComfyUI-MiniMaxH3-Cache | 8a45e096 | MiniMaxH3Cache | Yes |
Icyoung/ComfyUI-MiniMaxH3-TeaCache | 4cbb50d6 | MiniMaxH3TeaCache | Yes |
linjian-ufo/comfyui-speed-minimaxH3 | 2f507d68 | MiniMaxH3SpeedCache | Yes |
signerzwb/Comfyui-minimaxh3-FBcache-shendumao | a19b53c4 | H3CombinedAcceleration and three more | Yes |
FFFFFFpy/ComfyUI-MiniMaxH3-AdaptiveCache | dc350656 | MiniMaxH3AdaptiveCache and one more | Yes |
zbm2024/TE-Speed-MiniMaxH3 | e8b6549b | None | No |
The last repository fails with ModuleNotFoundError. It ships its logic as nodes.pyd, a compiled Windows extension, and this test machine runs Linux.
None of the eight repositories contains a requirements.txt, so no packages were installed, upgraded or downgraded at any point. The Python environment was byte-identical before and after all eight.
Phase two
Measured results
| Node | Wall time | Speed-up | Verdict | Peak VRAM | Peak RAM |
|---|---|---|---|---|---|
| No cache node (baseline) | 597.0 s | 1.000× | Reference | 11,679 MiB | 43,546 MiB |
MiniMaxH3TeaCache | 308.2 s / 308.6 s | 1.937× / 1.935× | Working | 11,647 MiB | 43,466 MiB |
ApplyMiniMaxH3FirstBlockCache | 363.2 s | 1.644× | Working | 11,601 MiB | 43,474 MiB |
MiniMaxH3AdaptiveCache | 377.7 s | 1.581× | Working | 11,201 MiB | 42,642 MiB |
H3CombinedAcceleration | 447.0 s | 1.336× | Working | 11,773 MiB | 42,060 MiB |
TESpeedMiniMaxH3 | 597.5 s | 0.999× | Changes output, saves nothing | 11,337 MiB | 43,523 MiB |
MiniMaxH3SpeedCache | Crashed at 50 s | — | Failed | 11,163 MiB | 41,338 MiB |
TeaCache was run twice because its repository is the only one publishing a specific multiplier. Both raw values are shown; we do not average them into a single tidier number. The two runs produced identical video data.
Peak VRAM stayed between 11,163 and 11,773 MiB across every node, against 12,288 MiB on the card. None of these nodes buys VRAM headroom. They trade computation for time, not for memory, so a workflow that does not fit today will still not fit with a cache node attached. The VRAM guide covers what actually moves that number.
Two results deserve attention. TESpeedMiniMaxH3 changed the video data yet finished in 597.5 seconds, half a second slower than running nothing. Its install step needs to modify a ComfyUI core file, that write failed on this machine, and the node still loaded and still altered the output. Looking only at "the output changed" would have scored it as working. MiniMaxH3SpeedCache crashed with AttributeError: module 'comfy.ldm.minimax.model' has no attribute 'time_shift_slope'; its author documents testing on ComfyUI 0.30.0, and this machine runs 0.31.0.
The reason this page exists
Why the published numbers cannot be compared
Every one of these projects publishes its own figure, and no two were measured on the same hardware or the same canvas. Setting the claims beside one set of same-machine measurements:
Where a project published two figures, the higher one is charted: FirstBlockCache states 1.49× and 1.44×, and 1.49× is shown. The FBcache figure of 13.7% end to end is charted as 1.137×. Every measured bar comes from the run table above.
| Node | Author's figure | Author's hardware | Measured here on one RTX 3060 |
|---|---|---|---|
MiniMaxH3TeaCache | 3.0× | CMP 170HX, 64GB modified mining card | 1.937× / 1.935× |
MiniMaxH3AdaptiveCache | 1.60× | RTX 5090 | 1.581× |
ApplyMiniMaxH3FirstBlockCache | 1.49× / 1.44× | RTX 5090 | 1.644× |
H3CombinedAcceleration | 13.7% end to end | RTX 3090 24GB | 1.336× |
TESpeedMiniMaxH3 | about 45% | Not stated | 0.999× |
The pattern is not simply that the published figures are inflated. Two nodes measured faster here than their authors reported, and AdaptiveCache landed within two percent of its stated figure. One measured about two thirds of its claim, and one delivered nothing. The problem was never honesty. It is that a number from a 5090 and a number from a modified mining card answer different questions, and neither answers the one a 3060 owner is asking.
One repository makes the incomparability explicit: TeaCache's README markets itself against TE-Speed by putting its own 66% figure, measured on that modified mining card, next to TE-Speed's 45% figure, measured on hardware that is never named.
Before you commit
Maintenance status
Stars measure attention at launch. They do not measure whether anyone is still maintaining the code.
| Repository | Stars | Last push | Licence |
|---|---|---|---|
HELPMEEADICE/TE-Speed-MiniMaxH3-OSS | 235 | 08-03, the day it was created | LGPL-3.0 |
duckyshell/ComfyUI-MiniMaxH3-FirstBlockCache | 77 | 08-07 | MIT |
lihaoyun6/ComfyUI-MiniMaxH3-Cache | 75 | 08-03, the day it was created | GPL-3.0 |
Icyoung/ComfyUI-MiniMaxH3-TeaCache | 11 | 08-04, the day after | MIT |
linjian-ufo/comfyui-speed-minimaxH3 | 6 | 08-09 | GPL-3.0 |
signerzwb/Comfyui-minimaxh3-FBcache-shendumao | 4 | 08-06 | None |
FFFFFFpy/ComfyUI-MiniMaxH3-AdaptiveCache | 4 | 08-07 | GPL-3.0 |
zbm2024/TE-Speed-MiniMaxH3 | 2 | 08-11 | None |
Repository metadata checked 2026-08-14 via the GitHub API. These fields move quickly; re-check them before relying on any row.
The most-starred project here, with 235 stars, has not been pushed since the day it was published, and it is the one that saved no time in our measurements. The 11-star project was the fastest.
Selection criteria
What the docs do not tell you
Two repositories were excluded from timing because their documentation does not establish how to connect them. lihaoyun6/ComfyUI-MiniMaxH3-Cache says only that it is used the way EasyCache is used, with no node name, no parameters and no wiring diagram. zbm2024/TE-Speed-MiniMaxH3 does not describe connection at all, and it does not load on Linux in any case. Guessing at the wiring and publishing the resulting number would produce a figure nobody could check.
That second repository is also worth a closer look before installation. It distributes a compiled nodes.pyd binary of 322,048 bytes where the comparable project ships 14,124 bytes of readable Python. A compiled binary cannot be audited, .pyd files generally run only on Windows, and this repository carries no licence. Those are three separate facts about what you would be installing.
One more thing surfaced during testing and does not appear in any README. lihaoyun6/ComfyUI-MiniMaxH3-Cache describes itself as patching ComfyUI core files. It does not write to any file; it replaces two model methods in memory the moment the module is imported. That means it takes effect as soon as the folder is present, whether or not you connect it to anything, and deleting the folder without restarting ComfyUI leaves the replacement live.
Common mistake
The wiring mistake that looks like a broken node
Six of these nodes take a MODEL input and return a MODEL output, and that output has to reach two places: the scheduler and the guider. Connecting only one of them is the easiest error to make, and it produces a node that loads correctly, shows no error, and does nothing.
It also looks exactly like a node that does not work. Before concluding a cache node is broken, confirm both connections exist, then apply the check described above. If the video data is identical with the node connected, the cache genuinely did not run. If you find one connection missing, that was the cause. The troubleshooting guide covers the other failure shapes.
Licensing
What you are allowed to do with these
Two of the eight repositories, signerzwb/Comfyui-minimaxh3-FBcache-shendumao and zbm2024/TE-Speed-MiniMaxH3, carry no licence file at all. Without a licence, default copyright applies and you have no granted permission to use, modify or redistribute the code, whatever the README invites you to do. For personal experimentation that may not concern you. For anything commercial it should.
Of the rest, two are MIT, three are GPL-3.0 or LGPL-3.0. If you are packaging a workflow for other people, the copyleft terms in the GPL family apply to what you distribute, and that is worth reading before you build a product around one of these.
Adjacent, not equivalent
These two are not cache nodes
Two projects appear in the same searches and work differently. shuaixn/ComfyUI-MiniMaxH3DualClockSampler is a sampler built for the dual audio and video schedule used with Turbo LoRA. aaalll12322/ComfyUI-MiniMaxH3-FP16Safe trades numerical stability for speed, which is a precision decision rather than a caching one. Neither skips computation the way the nodes above do, so neither belongs in the comparison, and the check on this page does not apply to them unchanged.
FAQ
Frequently asked questions
Conditions for every measured figure below: physical GPU 0 was an RTX 3060 12GB; ComfyUI 0.31.0 used PyTorch 2.13.0+cu130; the official R2V template loaded Ref2VA pruned INT8 at 864×480 for 124 frames with the seed fixed at 20260814; one cache node was installed at a time; Turbo LoRA and SageAttention were not enabled.
Do MiniMax H3 cache nodes actually speed up generation?
Four of the eight did on our test machine. TeaCache measured 1.937x, FirstBlockCache 1.644x, AdaptiveCache 1.581x and the FBcache node 1.336x against a 597.0 second baseline. One node changed the output but saved no time at all, one crashed, one shipped a Windows binary that would not import, and one had documentation too thin to wire up.
How can I tell whether a cache node is really working?
Run the same workflow twice with a fixed seed and no cache node, and confirm both runs produce the same video data. Then add the cache node and compare again. Caching works by skipping part of the computation, so it must change the numbers. If the video data is unchanged, the node is loaded but is not touching the computation, whatever its description claims.
Which MiniMax H3 cache node should I install?
On the configuration measured here, TeaCache was the fastest and AdaptiveCache and FirstBlockCache were close behind. Speed is not the only criterion: two of the eight repositories ship no licence at all, and three had not been updated since the day they were published. Check the licence and the maintenance status before you commit to one.
Next checks