Nodes/ComfyUI_JR_MiniMaxH3Node/H3 Unified Acceleration
ComfyUI Node

H3 Unified Acceleration

One node to stack every H3 acceleration trick — if you install the dependencies

By Goldlionren·Created 21 days ago·Updated about 9 hours ago· 28
H3 Unified Acceleration
  • model
  • model
enabletrue
sage_attentionsageattn_qk_int8_pv_fp8_cuda++
allow_compilefalse
enable_low_vram_attentiontrue
head_chunks4
enable_low_vram_ffntrue
ffn_chunks4
ffn_seq_threshold4096
enable_sol_attntrue
tau1.30
start_percent0.20
end_percent0.90
min_tokens4096
int8_qktrue
int8_pvtrue
sink_conditioningexact_kv_and_rows
mortonfalse
morton_curve2d_frame
verbosefalse
use_tmafalse
dense_blocks
tau_profile

There are a handful of well-known speed tricks for MiniMax H3 on a consumer GPU - SageAttention for fast attention, low-VRAM attention and chunked feed-forward patches, and Sol-Attn as a fallback dense backend. The JR H3 Unified Acceleration node is a single switchboard that composes all of them in a fixed order: KJ Sage → Low VRAM Attention → Chunk FeedForward → Sol-Attn. You feed it a MODEL, it returns a patched MODEL ready for the sampler.

Here's the honest part, up front: this node does not install or vendor the actual accelerators. They're external dependencies that this pack deliberately refuses to copy - you bring kijai/ComfyUI-KJNodes (for the Sage/Low-VRAM/FFN patches), the SageAttention variant your chosen mode needs (sageattention or sageattn3), and kijai/ComfyUI-SolAttn_triton plus its Triton runtime. They're only resolved at execution time, so a missing one won't stop the other JR nodes from loading - but this node will error when you actually run it. The README is also explicit about install order: Sol must be installed last, so Sage remains the previous dense backend for scenarios where Sol isn't applicable.

The switches that matter

  • model in → patched model out. The rest is configuration.
  • sage_attention - pick the backend: disabled, auto, int8 qk/pv variants over CUDA or Triton, sageattn3, or sageattn3_per_block_mean. The default is the cuda++ int8 variant.
  • enable_low_vram_attention + head_chunks (default 4) - split attention heads to cap peak memory.
  • enable_low_vram_ffn + ffn_chunks (default 4) + ffn_seq_threshold - chunk the feed-forward over sequence length. The threshold is the sequence length below which chunking kicks in.
  • enable_sol_attn + tau (default 1.3) + start_percent/end_percent (0.2→0.9) - Sol-Attn's soft-attention parameters and the sampling window where it applies.
  • int8_qk / int8_pv - quantization of the QK and PV attention paths; both default on.
  • sink_conditioning (exact_kv, exact_kv_and_rows, off), morton / morton_curve, use_tma, dense_blocks, allow_compile (default off - compilation is slow to build, fast at runtime), verbose.

Every enable is a true bypass - flipping one off removes the patch rather than simulating it with a chunk value.

The README's acceleration chain puts this node in the middle of the model-prep pipeline:

Load Diffusion Model → Turbo LoRA (external) → Reserved VRAM Setter (optional)
  → H3 Unified Acceleration → JR H3 Adaptive Cache (optional/experimental)
  → Sigma Shift → Basic Guider / Scheduler

Install

cd ComfyUI/custom_nodes
git clone https://github.com/Goldlionren/ComfyUI_JR_MiniMaxH3Node
<your-comfyui-python> -m pip install -r ComfyUI_JR_MiniMaxH3Node/requirements.txt

or ComfyUI Manager → search ComfyUI_JR_MiniMaxH3Node. Then install KJNodes, SageAttention, and SolAttn_triton separately (Sol last), per their own docs.

Troubleshooting

  • Runs fine until this node, then errors - a missing external accelerator. The error message tells you which one; install it (SageAttention variants are finicky about CUDA/Triton versions).
  • No speedup / slower - allow_compile off means no kernel fusion; some backends only pay off at longer sequences. Check ffn_seq_threshold and min_tokens against your actual clip length.
  • Sol-Attn-specific artifacts - tau, start_percent, and end_percent are the tuning knobs; the window defaults (20–90%) are a reasonable starting point, not gospel.
CategoryJR MiniMax H3/Optimization

Inputs (23)

NameTypeDefaultDescription
modelMODEL
enableBOOLEANtrue
sage_attentionCOMBOsageattn_qk_int8_pv_fp8_cuda++8 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_compileBOOLEANfalse
enable_low_vram_attentionBOOLEANtrue
head_chunksINT41–56
enable_low_vram_ffnBOOLEANtrue
ffn_chunksINT41–64
ffn_seq_thresholdINT4096256–262144
enable_sol_attnBOOLEANtrue
tauFLOAT1.300–4
start_percentFLOAT0.200–1
end_percentFLOAT0.900–1
min_tokensINT40960–1048576
int8_qkBOOLEANtrue
int8_pvBOOLEANtrue
sink_conditioningCOMBOexact_kv_and_rows3 options: exact_kv, exact_kv_and_rows, off
mortonBOOLEANfalse
morton_curveCOMBO2d_frame2 options: 3d, 2d_frame
verboseBOOLEANfalse
use_tmaBOOLEANfalse
dense_blocksSTRING
tau_profileoptSTRING

Outputs (1)

NameTypeDescription
modelMODEL