RuntimeError: quant_qk_per_thread_int8: Q/K base pointers and B/H/N strides must preserve 4-element alignment — MiniMax H3 + comfy kitchen attention backend on int8 checkpoints
- Dominant language
- Python
- Stars
- 133k
- Forks
- 15.7k
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 155
Description
### Custom Node Testing
- [x] I have tried disabling custom nodes and the issue persists (see [how to disable custom nodes](https://docs.comfy.org/troubleshooting/custom-node-issues#step-1%3A-test-with-all-custom-nodes-disabled) if you need help)
### Expected Behavior
MiniMax H3 should sample normally with the comfy kitchen attention backend on an int8-convrot quantized checkpoint, or fail gracefully with a clear message if that combination isn't supported.
[video_minimax_h3_t2v (3).json](https://github.com/user-attachments/files/30973475/video_minimax_h3_t2v.3.json)
### Actual Behavior
Crashes immediately on step 0/20 with RuntimeError: quant_qk_per_thread_int8: Q/K base pointers and B/H/N strides must preserve 4-element alignment, thrown from comfy_kitchen's sage_sdpa_quantize kernel.
### Steps to Reproduce
Load the standard MiniMax H3 T2V template workflow (attached).
Add a ModelAttentionBackend node between UNETLoader and the sampler chain, set attention = comfy kitchen attention.
Use an int8-convrot H3 checkpoint (minimax_h3_fl2va_pruned_int8_convrot.safetensors + qwen3vl_32b_minimax_h3_int8_convrot.safetensors).
Queue prompt.
### Debug Logs
```powershell
b4ldur@b4ldur-B650M-D3HP:~$ /home/b4ldur/ComfyUI-Easy-Install/ComfyUI-Easy-Install/python_embeded/bin/python3 -s /home/b4ldur/ComfyUI-Easy-Install/ComfyUI-Easy-Install/ComfyUI/main.py --listen 127.0.0.1 --disable-all-custom-nodes
[INFO] setup plugin alembic.autogenerate.schemas
[INFO] setup plugin alembic.autogenerate.tables
[INFO] setup plugin alembic.autogenerate.types
[INFO] setup plugin alembic.autogenerate.constraints
[INFO] setup plugin alembic.autogenerate.defaults
[INFO] setup plugin alembic.autogenerate.comments
[INFO] Adding extra search path diffusion_models /media/b4ldur/Windows/Comfysage/ComfyUI-Easy-Install/ComfyUI-Easy-Install/ComfyUI-Easy-Install/ComfyUI/models/diffusion_models
[INFO] Adding extra search path loras /media/b4ldur/Windows/Comfysage/ComfyUI-Easy-Install/ComfyUI-Easy-Install/ComfyUI-Easy-Install/ComfyUI/models/loras
[INFO] Adding extra search path audio_encoders /media/b4ldur/Files1/models/audio_encoders
[INFO] Adding extra search path checkpoints /media/b4ldur/Files1/models/checkpoints
[INFO] Adding extra search path clip /media/b4ldur/Files1/models/clip
[INFO] Adding extra search path clip_vision /media/b4ldur/Files1/models/clip_vision
[INFO] Adding extra search path configs /media/b4ldur/Files1/models/configs
[INFO] Adding extra search path controlnet /media/b4ldur/Files1/models/controlnet
[INFO] Adding extra search path diffusers /media/b4ldur/Files1/models/diffusers
[INFO] Adding extra search path diffusion_models /media/b4ldur/Files1/models/diffusion_models
[INFO] Adding extra search path embeddings /media/b4ldur/Files1/models/embeddings
[INFO] Adding extra search path fishaudios2 /media/b4ldur/Files1/models/fishaudioS2
[INFO] Adding extra search path flashvsr-v1.1 /media/b4ldur/Files1/models/FlashVSR-v1.1
[INFO] Adding extra search path gguf /media/b4ldur/Files1/models/gguf
[INFO] Adding extra search path gligen /media/b4ldur/Files1/models/gligen
[INFO] Adding extra search path hypernetworks /media/b4ldur/Files1/models/hypernetworks
[INFO] Adding extra search path image-saver /media/b4ldur/Files1/models/image-saver
[INFO] Adding extra search path inpaint /media/b4ldur/Files1/models/inpaint
[INFO] Adding extra search path ipadapter /media/b4ldur/Files1/models/ipadapter
[INFO] Adding extra search path latent_upscale_models /media/b4ldur/Files1/models/latent_upscale_models
[INFO] Adding extra search path llm /media/b4ldur/Files1/models/LLM
[INFO] Adding extra search path mediapipe /media/b4ldur/Files1/models/mediapipe
[INFO] Adding extra search path model_patches /media/b4ldur/Files1/models/model_patches
[INFO] Adding extra search path models /media/b4ldur/Files1/models/models
[INFO] Adding extra search path onnx /media/b4ldur/Files1/models/onnx
[INFO] Adding extra search path photomaker /media/b4ldur/Files1/models/photomaker
[INFO] Adding extra search path pulid /media/b4ldur/Files1/models/pulid
[INFO] Adding extra search path qwen-tts /media/b4ldur/Files1/models/qwen-tts
[INFO] Adding extra search path rembg /media/b4ldur/Files1/models/rembg
[INFO] Adding extra search path rmbg /media/b4ldur/Files1/models/RMBG
[INFO] Adding extra search path sam3 /media/b4ldur/Files1/models/sam3
[INFO] Adding extra search path sams /media/b4ldur/Files1/models/sams
[INFO] Adding extra search path seedvr2 /media/b4ldur/Files1/models/SEEDVR2
[INFO] Adding extra search path sonic /media/b4ldur/Files1/models/sonic
[INFO] Adding extra search path style_models /media/b4ldur/Files1/models/style_models
[INFO] Adding extra search path text_encoders /media/b4ldur/Files1/models/text_encoders
[INFO] Adding extra search path ultralytics /media/b4ldur/Files1/models/ultralytics
[INFO] Adding extra search path unet /media/b4ldur/Files1/models/unet
[INFO] Adding extra search path upscale_models /media/b4ldur/Files1/models/upscale_models
[INFO] Adding extra search path vae /media/b4ldur/Files1/models/vae
[INFO] Adding extra search path vae_approx /media/b4ldur/Files1/models/vae_approx
[INFO] Adding extra search path vibevoice /media/b4ldur/Files1/models/vibevoice
[INFO] Adding extra search path vitmatte /media/b4ldur/Files1/models/vitmatte
[INFO] Adding extra search path wildcards /media/b4ldur/Files1/models/wildcards
[INFO] Adding extra search path yolo /media/b4ldur/Files1/models/yolo
/home/b4ldur/ComfyUI-Easy-Install/ComfyUI-Easy-Install/python_embeded/lib/python3.12/site-packages/torch/cuda/__init__.py:63: FutureWarning: The pynvml package is deprecated. Please install nvidia-ml-py instead. If you did not install pynvml directly, please report this to the maintainers of the package that installed pynvml for you.
import pynvml # type: ignore[import]
[INFO] Found comfy_kitchen backend triton: {'available': True, 'disabled': True, 'unavailable_reason': None, 'capabilities': ['adaln', 'apply_rope', 'apply_rope1', 'apply_rope1_', 'apply_rope_', 'apply_rope_split_half', 'apply_rope_split_half1', 'apply_rope_split_half1_', 'apply_rope_split_half_', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'int8_linear', 'na3d', 'quantize_and_rotate_rowwise', 'quantize_int8_rowwise', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'rms_adaln', 'rms_rope', 'rms_rope1', 'rms_rope1_', 'rms_rope_', 'rms_rope_split_half', 'rms_rope_split_half1', 'rms_rope_split_half1_', 'rms_rope_split_half_', 'w4a8_int8_linear']}
[INFO] Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['adaln', 'apply_rope', 'apply_rope1', 'apply_rope1_', 'apply_rope_', 'apply_rope_split_half', 'apply_rope_split_half1', 'apply_rope_split_half1_', 'apply_rope_split_half_', 'convrot_w4a4_linear', 'dequantize_convrot_w4a4_weight', 'dequantize_int8_convrot_weight', 'dequantize_int8_convrot_weight_dtype', 'dequantize_int8_embedding', 'dequantize_int8_simple', 'dequantize_int8_simple_dtype', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'dequantize_w4a8_int8_weight', 'gemv_awq_w4a16', 'int8_linear', 'na3d', 'prepare_int4_weight_for_int8_linear', 'quantize_and_rotate_rowwise', 'quantize_convrot_w4a4_weight', 'quantize_int8_convrot_weight', 'quantize_int8_rowwise', 'quantize_int8_tensorwise', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'quantize_svdquant_w4a4', 'quantize_w4a8_int8_weight', 'rms_adaln', 'rms_rope', 'rms_rope1', 'rms_rope1_', 'rms_rope_', 'rms_rope_split_half', 'rms_rope_split_half1', 'rms_rope_split_half1_', 'rms_rope_split_half_', 'rotate_int8_convrot_weight', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4', 'scaled_mm_svdquant_w4a4', 'stochastic_rounding_fp8', 'w4a8_int8_linear']}
[INFO] Found comfy_kitchen backend cuda: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['adaln', 'apply_rope', 'apply_rope1', 'apply_rope1_', 'apply_rope_', 'apply_rope_split_half', 'apply_rope_split_half1', 'apply_rope_split_half1_', 'apply_rope_split_half_', 'convrot_w4a4_linear', 'dequantize_convrot_w4a4_weight', 'dequantize_int8_convrot_weight', 'dequantize_int8_convrot_weight_dtype', 'dequantize_int8_simple', 'dequantize_int8_simple_dtype', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'dequantize_w4a8_int8_weight', 'gemv_awq_w4a16', 'int8_linear', 'na3d', 'prepare_int4_weight_for_int8_linear', 'quantize_and_rotate_rowwise', 'quantize_convrot_w4a4_weight', 'quantize_int8_convrot_weight', 'quantize_int8_rowwise', 'quantize_int8_tensorwise', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'quantize_svdquant_w4a4', 'quantize_w4a8_int8_weight', 'rms_adaln', 'rms_rope', 'rms_rope1', 'rms_rope1_', 'rms_rope_', 'rms_rope_split_half', 'rms_rope_split_half1', 'rms_rope_split_half1_', 'rms_rope_split_half_', 'rotate_int8_convrot_weight', 'scaled_mm_nvfp4', 'scaled_mm_svdquant_w4a4', 'stochastic_rounding_fp8', 'w4a8_int8_linear']}
[INFO] Found comfy_kitchen backend hip: {'available': False, 'disabled': False, 'unavailable_reason': 'PyTorch ROCm/HIP runtime not available', 'capabilities': []}
[INFO] Checkpoint files will always be loaded safely.
[INFO] Total VRAM 15819 MB, total RAM 95656 MB
[INFO] pytorch version: 2.9.1+cu130
[INFO] Set vram state to: NORMAL_VRAM
[INFO] Device: cuda:0 NVIDIA GeForce RTX 5070 Ti : cudaMallocAsync
[INFO] Using async weight offloading with 2 streams
[INFO] Enabled pinned memory 81320
[INFO] working around nvidia conv3d memory bug.
[INFO] Using pytorch attention
[INFO] aimdo: /project/src/control.c:276:INFO:comfy-aimdo inited for GPU: NVIDIA GeForce RTX 5070 Ti (VRAM: 15819 MB)
[INFO] DynamicVRAM support detected and enabled
[INFO] Python version: 3.12.10 (main, Apr 16 2026, 18:09:14) [GCC 13.3.0]
[INFO] ComfyUI version: 0.32.0
[INFO] comfy-aimdo version: 0.4.13
[INFO] comfy-kitchen version: 0.2.30
[INFO] comfyui-frontend-package version: 1.48.7
[INFO] comfyui-workflow-templates version: 0.11.40
[INFO] comfyui-embedded-docs version: 0.5.9
[INFO] comfy-kitchen version: 0.2.30
[INFO] comfy-aimdo version: 0.4.13
[INFO] [Prompt Server] web root: /home/b4ldur/ComfyUI-Easy-Install/ComfyUI-Easy-Install/python_embeded/lib/python3.12/site-packages/comfyui_frontend_package/static
[INFO] Asset seeder disabled
[INFO] No OpenGL_accelerate module loaded: No module named 'OpenGL_accelerate'
[INFO] Skipping loading of custom nodes
[INFO] Context impl SQLiteImpl.
[INFO] Will assume non-transactional DDL.
[INFO] Using RAM pressure cache.
[INFO] Starting server
[INFO] To see the GUI go to: http://127.0.0.1:8188
[INFO] got prompt
[INFO] VAE load device: cuda:0, offload device: cpu, dtype: torch.float32
[INFO] VAE load device: cuda:0, offload device: cpu, dtype: torch.float16
[INFO] Found quantization metadata version 1
[INFO] Using MixedPrecisionOps for text encoder
[INFO] CLIP/text encoder model load device: cuda:0, offload device: cpu, current: cpu, dtype: torch.float16
[INFO] Requested to load MiniMaxH3TEModel_
[INFO] Model MiniMaxH3TEModel_ prepared for dynamic VRAM loading. 25882MB Staged. 0 patches attached. Force pre-loaded 310 weights: 1272 KB.
[INFO] Found quantization metadata version 1
[INFO] Detected mixed precision quantization
[INFO] Using mixed precision operations
[INFO] Native ops: int8_tensorwise, asym_w4a8_int8, convrot_w4a4, float8_e4m3fn, float8_e5m2, nvfp4 , emulated ops: mxfp8
[INFO] model weight dtype torch.bfloat16, manual cast: torch.bfloat16
[INFO] model_type FLOW_AV
[INFO] Requested to load MiniMaxH3
[INFO] 0 models unloaded.
[INFO] Model MiniMaxH3 prepared for dynamic VRAM loading. 19995MB Staged. 0 patches attached. Force pre-loaded 210 weights: 1175 KB.
0%| | 0/20 [00:00
Contributor guide
Research direction
Start by tracing the comfy kitchen attention backend into its sage_sdpa_quantize kernel, which raises the alignment error during the attached MiniMax H3 workflow. Reproduce using the standard MiniMax H3 T2V template and an int8-convrot checkpoint with the comfy kitchen backend selected. Done means sampling works for this combination or it fails gracefully with a clear unsupported-combination message.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, pytorch
- Domain
- backend, machine-learning
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100