KJNodes/torchcompilegenerated

TorchCompileModelAdvanced

В технической реализации этот узел позволяет пользователю выбирать различные бэкенды компиляции (например, inductor) и режимы оптимизации (например, max-autotune).

Torch Compile Model Advanced

model
MODEL
backend
inductor
fullgraph
mode
default
dynamic
false
compile_transformer_blocks_only
dynamo_cache_size_limit
64
debug_compile_keys
disable_dynamic_vram
KJNodes

Узел TorchCompileModelAdvanced, в его технической реализации, позволяет пользователю выбирать различные бэкенды компиляции (например, inductor) и режимы оптимизации (например, max-autotune).

TorchCompileModelAdvanced — это узел ComfyUI, предназначенный для оптимизации производительности вывода диффузионных моделей. Используя функцию PyTorch torch.compile, он компилирует ключевые части модели в более эффективный формат, тем самым повышая скорость генерации изображений. Этот узел предоставляет более детальные параметры управления по сравнению с базовым узлом компиляции.

Функциональность узла

В его технической реализации этот узел позволяет пользователю выбирать различные бэкенды компиляции (например, inductor) и режимы оптимизации (например, max-autotune). Он управляет размером кэша компиляции через настройку torch._dynamo.config.cache_size_limit и позволяет выборочно компилировать только Transformer-модули модели для баланса между скоростью компиляции и эффектом оптимизации.

Описание параметров узла - TorchCompileModelAdvanced

Входные соединения (Inputs)

Название параметраТип данныхОбязательныйЗначение по умолчаниюДопустимые значения/опцииОписание
modelMODELДа--Принимает диффузионную модель для оптимизации в качестве входного объекта для процесса компиляции.

Параметры управления (Parameters)

Название параметраТип данныхОбязательныйЗначение по умолчаниюДопустимые значения/опцииОписание
backendCOMBOДаinductor"inductor", "cudagraphs"Выбор бэкенд-движка, используемого для компиляции PyTorch. Допустимые значения: inductor или cudagraphs.
modeCOMBOДаdefault"default", "max-autotune", "max-autotune-no-cudagraphs", "reduce-overhead"Режим оптимизации.
dynamicCOMBOДаfalse"auto", "true", "false"Включает отслеживание динамической формы (true, false или auto).
fullgraphBOOLEANДаFalse-Включить режим полного графа
compile_transformer_blocks_onlyBOOLEANДаTrue-Компилировать только Transformer-блоки, быстрее компиляция и меньше вероятность ошибок
dynamo_cache_size_limitINTДа640 - 1024 (шаг: 1)torch._dynamo.config.cache_size_limit
debug_compile_keysBOOLEANДаFalse-Выводить ключи компиляции, используемые для torch.compile
disable_dynamic_vramBOOLEANНетFalse-Отключает динамическое управление VRAM для уменьшения фрагментации памяти.

Выходные данные (Output)

Название параметраТип данныхОписание
MODELMODELВыводит скомпилированную и оптимизированную модель для последующих этапов генерации изображений.

Сценарии использования

В практическом применении, когда пользователь строит рабочий процесс, ориентированный на скорость генерации, этот узел можно подключить после загруженной модели. Настраивая параметры, такие как режим компиляции и отслеживание динамической формы, пользователь может попытаться достичь наилучшей производительности вывода на различном оборудовании (например, GPU NVIDIA), не изменяя саму модель.

Важные замечания

Этот узел помечен как экспериментальная функция, его поведение может меняться с обновлениями PyTorch. Неправильная комбинация параметров может привести к сбою компиляции или ошибкам выполнения. Рекомендуется провести тщательное тестирование перед использованием в критически важных рабочих процессах.

Ссылка на исходный код узла TorchCompileModelAdvanced

Узел TorchCompileModelAdvanced взят из пакета узлов ComfyUI-KJNodes.

Комментарии

Войдите через GitHub, чтобы участвовать в обсуждении.

Загрузка комментариев…