L'optimisation du VAE vidéo MiniMax H3 arrive dans ComfyUI 0.36.0

ComfyUI Wikinews

ComfyUI 0.36.0 accélère le VAE vidéo MiniMax H3 grâce aux kernels comfy-kitchen, et le référentiel officiel Comfy-Org héberge désormais le VAE int8 convrot compact.

Le VAE vidéo MiniMax H3 a été réécrit autour des nouveaux kernels comfy-kitchen dans le cœur de ComfyUI (PR #16187, fusionnée le 15 septembre), et le référentiel officiel Comfy-Org/MiniMax-H3 contient désormais un VAE vidéo int8 convrot compact. Les deux parties sont livrées dans ComfyUI 0.36.0, sans aucun nœud à installer ni flux de travail à reconfigurer.

Ce qui a changé dans le chemin du VAE

Toutes les modifications se trouvent dans comfy/ldm/minimax/vae.py et comfy/ops.py. Les kernels proviennent de comfy-kitchen #167, fusionnée le 13 septembre.

  • Passes d'encodeur fusionnées. group_norm_silu_pad3d exécute le GroupNorm par frame, le SiLU et le padding reflect/causal en une seule passe et produit du NDHWC afin que cuDNN s'exécute sans conversions de layout. La PR décrit cette étape comme sans perte et toujours active.
  • Accumulation fp16. ck.fp16_conv3d et ck.fp16_linear utilisent des kernels CUTLASS à accumulation fp16, avec le biais et le résidu repliés dans l'épilogue. Ils s'activent sous --fast en accumulation fp16, et les lancements trop petits pour remplir le GPU sont renvoyés à cuBLAS.
  • Décodeur int8. Les décodeurs quantifiés en int8 passent par ck.int8_attention et un GEMM int8 dont l'épilogue porte le résidu, avec rms_norm/swiglu repliés dans le quantificateur d'activation et une garde de quantification de vague entre les tuiles 128x256 et 128x128.
  • Décodage par tuiles en lots. tiled_decode décode désormais jusqu'à quatre tuiles à la fois, plafonné par la mémoire libre, de sorte que les exécutions par tuiles ne se sérialisent plus frame par frame.
  • Compatible avec la VRAM dynamique. Les poids et les paramètres de normalisation arrivent via cast_bias_weight, donc tout ce qui précède continue de fonctionner avec le chargement dynamique de la VRAM de ComfyUI.

Si comfy-kitchen ou un kernel spécifique est manquant, le code revient à la séquence eager précédente, donc les installations antérieures ne sont pas affectées.

Effet mesuré

La PR des kernels rapporte des appels comfy.sd.VAE de bout en bout en 1344x768 sur 362 frames, mesurés sur une 5090 :

CheminAvantAprès
Encodage (fp16)46,6 s32,0 s
Encodage (--fast, accumulation fp16)47,2 s21,2 s
Décodage (fp16)34,6 s31,1 s
Décodage (--fast)27,7 s23,2 s
Décodage (int8)18,7 s12,9 s

La qualité a été mesurée par rapport au chemin exact : 68 dB pour l'encodage à accumulation fp16 et 67,7 dB pour le décodage int8, alors que le plancher de reconstruction du VAE lui-même se situe autour de 38 dB. Un commit de suivi dans le cœur (PR #16332) réduit encore un peu l'utilisation de la mémoire du VAE MiniMax.

Le VAE int8 convrot rejoint le référentiel officiel

Le fichier à utiliser est vae/minimax_h3_video_vae_int8_convrot.safetensors dans Comfy-Org/MiniMax-H3, téléversé le 15 septembre pour 2,81 GB. Interrogé dans le fil Reddit sur ce qui le distingue du VAE int8 expérimental antérieur (3,17 GB) qui circulait pour H3, Kijai a répondu que l'encodeur est désormais stocké en fp16 au lieu de fp32 : il tournait de toute façon en fp16 par défaut, donc les deux décodent à l'identique et c'est le fichier le plus petit qu'il faut conserver.

Sortie Ref2VA de MiniMax H3 issue du fil qui a signalé l'amélioration

Une génération référence-vers-vidéo MiniMax H3 avec trois images de référence à la résolution maximale permise par la carte de l'auteur, publiée en complément du rapport Reddit sur le VAE mis à jour (u/Chiduck99).

Ce que les utilisateurs constatent sur les cartes plus modestes

Le changement a été révélé par un rapport Reddit d'un utilisateur d'RTX 3060 12 GB dont le plafond précédent avec H3 était de 0,8 MP à 10 secondes. Avec le VAE mis à jour sur la même carte, il rapporte 1 MP à 10 secondes et 0,7 MP à 15 secondes, sans perte de qualité visible. La réponse de Kijai dans ce fil relie le téléversement au travail sur les kernels : les kernels personnalisés optimisés de comfy-kitchen accélèrent aussi bien le VAE int8 que le VAE fp16 d'origine, et ils sont toujours actifs tant que ComfyUI et comfy-kitchen sont à jour.

Disponibilité

Les deux parties font partie de ComfyUI 0.36.0 (15 septembre). Le chemin du VAE arrive via la PR #16187 et comfy-kitchen 0.2.34 est épinglé dans le requirements.txt de ce tag (0.2.35 sur le master actuel), donc une installation mise à jour ne nécessite rien de plus. Le VAE vidéo, le VAE audio et le décodeur sont tous récupérés automatiquement par les flux de travail MiniMax H3 existants.

Commentaires

Connectez-vous avec GitHub pour rejoindre la discussion.

Chargement des commentaires…
L'optimisation du VAE vidéo MiniMax H3 arrive dans ComfyUI 0.36.0 | ComfyUI Wiki