TorchCompileModelAdvanced
En la implementación técnica, este nodo permite a los usuarios seleccionar diferentes backends de compilación (como inductor) y modos de optimización (como max-autotune).
Torch Compile Model Advanced
El nodo TorchCompileModelAdvanced, en su implementación técnica, permite a los usuarios seleccionar diferentes backends de compilación (como inductor) y modos de optimización (como max-autotune).
TorchCompileModelAdvanced es un nodo de ComfyUI diseñado para optimizar el rendimiento de inferencia de modelos de difusión. Utiliza la función torch.compile de PyTorch para compilar partes clave del modelo en un formato más eficiente, mejorando así la velocidad de generación de imágenes. Este nodo ofrece opciones de control más detalladas que el nodo de compilación básico.
Funcionalidad del Nodo
En su implementación técnica, este nodo permite a los usuarios seleccionar diferentes backends de compilación (por ejemplo, inductor) y modos de optimización (por ejemplo, max-autotune). Controla el tamaño de la caché de compilación configurando torch._dynamo.config.cache_size_limit y ofrece la opción de compilar solo los bloques Transformer del modelo, equilibrando la velocidad de compilación con la eficacia de optimización.
Descripción de los Parámetros del Nodo - TorchCompileModelAdvanced
Entradas (Inputs)
| Nombre del Parámetro | Tipo de Dato | Requerido | Valor por Defecto | Rango/Opción | Descripción |
|---|---|---|---|---|---|
model | MODEL | Sí | - | - | Recibe el modelo de difusión a optimizar como objeto de entrada para el proceso de compilación. |
Parámetros de Control (Parameters)
| Nombre del Parámetro | Tipo de Dato | Requerido | Valor por Defecto | Rango/Opción | Descripción |
|---|---|---|---|---|---|
backend | COMBO | Sí | inductor | "inductor", "cudagraphs" | Selecciona el motor backend utilizado por la compilación de PyTorch. Los valores posibles son inductor o cudagraphs. |
mode | COMBO | Sí | default | "default", "max-autotune", "max-autotune-no-cudagraphs", "reduce-overhead" | Modo de optimización. |
dynamic | COMBO | Sí | false | "auto", "true", "false" | Habilita el rastreo de formas dinámicas (true, false o auto). |
fullgraph | BOOLEAN | Sí | False | - | Habilitar el modo de grafo completo |
compile_transformer_blocks_only | BOOLEAN | Sí | True | - | Compilar solo bloques transformer, compilación más rápida y menos propensa a errores |
dynamo_cache_size_limit | ENTERO | Sí | 64 | 0 - 1024 (paso: 1) | torch._dynamo.config.cache_size_limit |
debug_compile_keys | BOOLEAN | Sí | False | - | Imprimir las claves de compilación utilizadas para torch.compile |
disable_dynamic_vram | BOOLEAN | No | False | - | Deshabilitar la gestión dinámica de VRAM para reducir la fragmentación de memoria. |
Salida (Output)
| Nombre del Parámetro | Tipo de Dato | Descripción |
|---|---|---|
| MODEL | MODEL | Devuelve el modelo compilado y optimizado para los pasos posteriores de generación de imágenes. |
Casos de Uso
En aplicaciones prácticas, cuando un usuario construye un flujo de trabajo que prioriza la velocidad de generación, este nodo puede conectarse después del modelo cargado. Ajustando parámetros como el modo de compilación y el rastreo de formas dinámicas, los usuarios pueden experimentar para lograr el mejor rendimiento de inferencia en diferentes hardware (por ejemplo, GPU NVIDIA) sin modificar el modelo en sí.
Consideraciones
Este nodo está marcado como una característica experimental; su comportamiento puede cambiar con las actualizaciones de la versión de PyTorch. Combinaciones de parámetros inadecuadas pueden provocar fallos de compilación o errores de ejecución. Se recomienda realizar pruebas exhaustivas antes de usarlo en flujos de trabajo críticos.
Enlace al Código Fuente del Nodo TorchCompileModelAdvanced
El nodo TorchCompileModelAdvanced pertenece al paquete de nodos ComfyUI-KJNodes.
Comentarios
Inicia sesión con GitHub para unirte a la conversación.