KJNodes/experimentalgenerated

Correctif Triton VAE(PatchTritonVAE)

Accélère le décodage/codage VAE avec des noyaux fusionnés Triton norm+SiLU et la disposition de convolution channels_last. Les VAE pris en charge (détection automatique) : VAE vidéo Wan 2.1/2.2, y compris Qwen-Image (RMSNorm, ~1,4x/1,15x), VAE image KL tels que Flux/Flux2, SDXL et SD1.5 (GroupNorm, ~1,6–1,8x à 2048px), et VAE vidéo LTXV/LTX2 (PixelNorm ; les blocs décodeur conditionnés par le timestep reçoivent une fusion norm uniquement). Les autres architectures ne sont pas prises en charge. Appliqué sous forme de correctifs d'objet sur un patcher cloné, il n'existe donc que tant que ce VAE est chargé.

Patch Triton VAE

vae
vae
fuse_norm_silu
channels_last
int8_conv
autotune
KJNodes

Description

Accélère le décodage/codage VAE en appliquant des noyaux fusionnés Triton norm+SiLU et la disposition de convolution channels_last. Les VAE pris en charge sont détectés automatiquement :

  • VAE vidéo Wan 2.1/2.2 (y compris la variante Qwen-Image) : RMSNorm, accélération ~1,4×/1,15×.
  • VAE image KL (Flux/Flux2, SDXL, SD1.5) : GroupNorm, ~1,6–1,8× à 2048px.
  • VAE vidéo LTXV/LTX2 : PixelNorm ; les blocs décodeur conditionnés par le timestep reçoivent une fusion norm uniquement.

Les autres architectures ne sont pas prises en charge et seront transmises sans modification. Le nœud applique les correctifs sur un patcher cloné, de sorte que les optimisations n'existent que tant que ce VAE est chargé.

Entrées

NomTypeDéfautInfobulle
vaeVAELe modèle VAE à corriger.
fuse_norm_siluBOOLEANvraiRemplace les chaînes norm+SiLU (RMSNorm pour Wan, GroupNorm pour les VAE KL) par des noyaux Triton fusionnés (passe unique, accumulation fp32). Nécessite Triton.
channels_lastBOOLEANvraiConvertit les poids de convolution au format mémoire channels_last, supprimant les transpositions de disposition cuDNN autour de chaque convolution. Requis pour que le noyau GroupNorm fusionné s'active sur les VAE KL.
int8_convBOOLEANfauxEXPÉRIMENTAL : exécute les convolutions 3×3 du décodeur VAE sur les cœurs tenseur int8 (4× le débit bf16 sur Ada+). Poids quantifiés par canal de sortie, activations dynamiquement par tenseur ; ~45–48 dB vs décodage bf16, perte de qualité mineure possible. Pris en charge sur les VAE vidéo Wan 2.1/2.2 et les VAE image KL (Flux2/SDXL/SD1.5) ; ignoré pour les autres.
autotuneBOOLEANfauxÉvalue plusieurs configurations de taille de bloc de noyau lors de la première utilisation de chaque forme de tenseur et met en cache la plus rapide. Légère saccade par nouvelle résolution, généralement quelques pour cent plus rapide après échauffement.

Sorties

TypeDescription
VAEL'objet VAE corrigé (un patcher cloné). Utilisez cette sortie à la place de la connexion VAE d'origine.

Notes d'utilisation

  • Toutes les optimisations nécessitent Triton d'être installé dans votre environnement ComfyUI (généralement via pip install triton). Sans Triton, fuse_norm_silu et int8_conv seront silencieusement ignorés.
  • Le nœud détecte automatiquement les architectures VAE prises en charge ; les VAE non pris en charge sont transmis sans modification.
  • Activez autotune après avoir choisi vos résolutions habituelles pour une meilleure vitesse à long terme, mais soyez conscient de la saccade initiale sur les nouvelles formes.
  • Le drapeau int8_conv est expérimental – vérifiez la qualité de votre sortie avant de vous y fier en production.
  • Comme le VAE est corrigé via un patcher cloné, le nœud VAE d'origine dans votre flux de travail reste inchangé. Vous devez router la sortie de ce nœud vers les nœuds de décodage/codage.
  • Ce nœud se trouve dans la catégorie KJNodes/expérimental du menu des nœuds.

Commentaires

Connectez-vous avec GitHub pour rejoindre la discussion.

Chargement des commentaires…
Correctif Triton VAE (PatchTritonVAE) - ComfyUI-KJNodes | ComfyUI Wiki