MiniMax H3 비디오 VAE 최적화, ComfyUI 0.36.0에 적용
ComfyUI 0.36.0은 comfy-kitchen 커널로 MiniMax H3 비디오 VAE를 가속하며, 공식 Comfy-Org 저장소는 이제 컴팩트한 int8 convrot VAE를 제공합니다.
VAE 경로에서 달라진 점
모든 변경 사항은 comfy/ldm/minimax/vae.py와 comfy/ops.py에 있습니다. 커널은 comfy-kitchen #167에서 비롯되었으며, 9월 13일 병합되었습니다.
- 융합된 인코더 패스.
group_norm_silu_pad3d는 프레임별 GroupNorm, SiLU, reflect/causal 패딩을 단일 패스로 실행하고 NDHWC로 출력하므로 cuDNN이 레이아웃 변환 없이 동작합니다. PR은 이 단계를 무손실이며 항상 켜져 있다고 설명합니다. - fp16 누산.
ck.fp16_conv3d와ck.fp16_linear는 bias와 residual을 에필로그에 접어 넣은 CUTLASS fp16 누산 커널을 사용합니다. 이들은 fp16 누산과 함께--fast에서 활성화되며, GPU를 채우기에 너무 작은 런치는 cuBLAS로 되돌려집니다. - Int8 디코더. Int8로 양자화된 디코더는
ck.int8_attention과 residual을 에필로그에서 처리하는 int8 GEMM을 거치며,rms_norm/swiglu는 활성화 양자화기에 접혀 들어가고 128x256과 128x128 타일 사이에는 웨이브 양자화 가드가 있습니다. - 배치 타일 디코드.
tiled_decode는 이제 사용 가능한 메모리에 맞춰 최대 네 개의 타일을 한 번에 디코딩하므로, 타일드 실행이 더 이상 프레임 단위로 직렬화되지 않습니다. - 동적 VRAM 호환. 가중치와 정규화 파라미터가
cast_bias_weight를 통해 전달되므로, 위의 모든 기능이 ComfyUI의 동적 VRAM 로딩 환경에서도 계속 작동합니다.
comfy-kitchen이나 특정 커널이 누락된 경우 코드는 이전의 eager 시퀀스로 폴백하므로, 이전 설치에는 영향을 주지 않습니다.
측정된 효과
커널 PR은 5090에서 측정한, 362프레임에 걸친 1344x768 해상도의 엔드투엔드 comfy.sd.VAE 호출 결과를 보고합니다.
| 경로 | 이전 | 이후 |
|---|---|---|
| 인코드 (fp16) | 46.6 s | 32.0 s |
인코드 (--fast, fp16 누산) | 47.2 s | 21.2 s |
| 디코드 (fp16) | 34.6 s | 31.1 s |
디코드 (--fast) | 27.7 s | 23.2 s |
| 디코드 (int8) | 18.7 s | 12.9 s |
품질은 정확한 경로를 기준으로 측정되었습니다. fp16 누산 인코드의 경우 68 dB, int8 디코드의 경우 67.7 dB였으며, VAE 자체의 재구성 하한은 약 38 dB입니다. 후속 코어 커밋(PR #16332)은 MiniMax VAE 메모리 사용량을 조금 더 낮춥니다.
int8 convrot VAE, 공식 저장소로 이동
사용할 파일은 Comfy-Org/MiniMax-H3의 vae/minimax_h3_video_vae_int8_convrot.safetensors이며, 9월 15일 2.81 GB로 업로드되었습니다. 레딧 스레드에서 H3용으로 유통되던 이전 실험적 int8 VAE(3.17 GB)와 어떻게 다른지 묻자, Kijai는 이제 인코더가 fp32 대신 fp16으로 저장된다고 답했습니다. 어차피 기본적으로 fp16으로 실행되었기 때문에 두 파일은 동일하게 디코딩되며, 더 작은 파일을 쓰면 된다는 것입니다.
작성자의 카드가 허용하는 최대 해상도에서 참조 이미지 세 장을 사용한 MiniMax H3 레퍼런스 기반 비디오 생성 실행 결과. 업데이트된 VAE에 관한 레딧 보고와 함께 게시됨 (u/Chiduck99).
저사양 카드에서 사용자들이 경험하는 변화
이 변화는 H3에서 이전 한계가 10초에 0.8 MP였던 RTX 3060 12 GB 사용자의 레딧 보고를 통해 알려졌습니다. 같은 카드에서 업데이트된 VAE를 사용하면 10초에 1 MP, 15초에 0.7 MP를 기록하며 눈에 띄는 품질 저하도 없다고 보고합니다. 해당 스레드에서 Kijai의 답변은 이번 업로드를 커널 작업과 연결합니다. comfy-kitchen의 최적화된 커스텀 커널은 int8 VAE와 원본 fp16 VAE 모두를 가속하며, ComfyUI와 comfy-kitchen이 최신 상태라면 항상 켜져 있습니다.
사용 가능 여부
두 부분 모두 ComfyUI 0.36.0(9월 15일)에 포함됩니다. VAE 경로는 PR #16187을 통해 제공되며, 해당 태그의 requirements.txt에는 comfy-kitchen 0.2.34가 고정되어 있습니다(현재 master에서는 0.2.35). 따라서 업데이트된 설치에는 추가로 필요한 것이 없습니다. 비디오 VAE, 오디오 VAE, 디코더는 모두 기존 MiniMax H3 워크플로에서 자동으로 인식됩니다.
댓글
GitHub로 로그인하고 토론에 참여하세요.