Исследователи опубликовали в arXiv препринт, посвящённый систематической оптимизации инференса диффузионных моделей на Apple M3 Ultra. Работа выполнена на платформе с 60-ядерным GPU и 512 ГБ унифицированной памяти. Основная цель — добиться реального времени для задачи преобразования изображений с камеры (img2img).
В ходе эксперимента было протестировано 10 различных подходов: конвертация моделей в CoreML, квантизация, Token Merging, использование Neural Engine, компактные архитектуры, интерполяция кадров, синтез на основе kNN, pix2pix-turbo, пропуск кадров по оптическому потоку и дистилляция знаний. Каждый метод оценивался количественно.
Наилучший результат показала комбинация CoreML-конвертации дистиллированной модели SDXS-512 с трёхпоточным конвейером камеры. Это позволило достичь 22,7 кадров в секунду при разрешении 512?512 пикселей, что достаточно для работы в реальном времени.
Ключевой вывод исследования — оптимизационные приёмы, хорошо зарекомендовавшие себя на CUDA-ускорителях NVIDIA, не всегда эффективны на архитектуре Apple Silicon с унифицированной памятью. Например, квантизация не дала прироста скорости, параллельный инференс оказался неэффективен, а Neural Engine плохо подходит для больших моделей.
Авторы подчёркивают, что ландшафт оптимизации на Apple Silicon принципиально отличается от такового на GPU NVIDIA. Они предоставляют практические рекомендации для инференса диффузионных моделей на чипах Apple.
Работа представляет интерес для разработчиков, стремящихся запускать современные генеративные модели на оборудовании Apple без использования сторонних GPU. Полученные результаты могут быть полезны для приложений дополненной реальности, видеосвязи и творческих инструментов.