Компилятор Diffusion ускоряет Krea 2 Turbo на потребительских GPU

ComfyUI Wikinews

Открытый C++20 компилятор для моделей диффузии запускает Krea 2 Turbo от промпта до PNG в 2 раза быстрее, чем ComfyUI на RTX 3090 Ti. MiniMax H3 в процессе.

alexone выпустил Компилятор Diffusion, независимый компилятор C++20 и нативный рантайм для вывода и обучения моделей диффузии. На RTX 3090 Ti скомпилированный запуск Krea 2 Turbo завершает полную цепочку от промпта до PNG за 26.58 с против 59.14 с в ComfyUI/PyTorch, что составляет измеренное ускорение в 2.2 раза с проверкой числовых значений на уровне битов. Источник: документация проекта (README).
Показ образцовых выходов Krea 2

Krea 2 Turbo, первая цель модели изображений для компилятора. Источник: открытые веса Krea 2

Что это такое

Компилятор Diffusion принимает чекпойнт модели через специфичный для модели фронтенд в верифицированное промежуточное представление (DiffIR). Затем компилятор планирует выполнение, а общий нативный C++ рантайм реализует этот план на установленном бэкенде оборудования. Бэкенд NVIDIA использует CUDA Driver API, NVRTC, cuBLASLt, cuDNN и пользовательские ядра; скомпилированные исполняемые файлы не связываются с libtorch и не вызывают Python worker.

Проект позиционируется по отношению к обычному стеку вывода строгим образом: каждое принятие модели требует числовых контрольных точек (косинусное сходство, относительная L2, проверки на бесконечность) и проверки декодированного артефакта, а не только успешной сборки. Denoiser Krea 2 Turbo остался битово идентичным траектории создателя, и декодирование VAE прошло с косинусом 0.99999339.

Бенчмарк Krea 2 Turbo

Замороженный бенчмарк использует официальный чекпойнт Krea 2 Turbo и рецепт создателя на RTX 3090 Ti: выход 1024x1024, математика BF16, 8 шагов Euler, CFG отключен, и идентичные чекпойнт, промпт, сем и расписание для обоих запусков.

ИзмерениеНативный скомпилированныйComfyUI/PyTorch BF16
Первый холодный denoise step3.57 s28.29 s
Медиана горячего denoise step2.25 s2.00 s
Полное 8-step denoise19.36 s42.32 s
Tokenizer + text encoder2.28 s9.05 s
Декодирование VAE + PNG3.43 s8.31 s
Промпт до PNG, всего26.58 s59.14 s

Это в 2.054 раза быстрее для всей цепочки и в 2.184 раза быстрее только на цикле denoise loop. Интересная деталь заключается в том, откуда не берется ускорение: время на шаг в горячем режиме фактически немного медленнее, чем разогретый PyTorch (2.25 с против 2.00 с). Прирост достигается за счет устранения накладных расходов на прогрев, более быстрых этапов текстового энкодера и VAE, а также полного удаления Python из цикла. Сравнительным эталоном является стандартное ComfyUI выполнение в режиме eager, не torch.compile, что README отмечает как отдельный сопоставимый бенчмарк.

Фреймворк также поддерживает каркас обучения LoRA через тот же DiffIR и рантайм, включая обратный режим автодиффа, накопление градиентов, AdamW и чекпойнт/возобновление.

MiniMax H3 в процессе

Первым фронтом для тестирования в производственном масштабе был на самом деле видео MiniMax H3, а не Krea 2. Текущий чекпойнт разработки H3 использует нативный кэш проекции ConvRot INT8 с точным вниманием cuDNN и работает в 1.717 раза быстрее на оценку каждого denoiser, чем потоковый BF16 на той же карточке. Кандидат с приближенным вниманием пересек порог времени 2x, но не прошел проверку неизменной траектории и был отклонен. Запуски полной приемки от промпта до видео все еще открыты, поэтому пока не заявлено ускорения H3 от начала до конца.

Согласно обсуждению в ежедневном резюме, поддержка H3 ConvRot INT8 является следующей целью рантайма, и запланированы хуки интеграции ComfyUI.

Доступность

Код общедоступен по адресу github.com/CodeAlexx/diffusion-compiler. Он собирается с помощью CMake 3.24+, компилятора C++20 и CUDA Toolkit плюс cuDNN для бэкенда NVIDIA. Чекпойнты моделей и сгенерированные артефакты не распространяются в репозитории; компилятор работает с локально загруженными весами. Текущий рантайм охватывает Krea 2 Turbo и путь разработки MiniMax H3.

Комментарии

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

Загрузка комментариев…
Компилятор Diffusion ускоряет Krea 2 Turbo на потребительских GPU | ComfyUI Wiki