Энтузиасты нашли способ запускать обучение ИИ-моделей на Neural Engine в Apple M4
Обычно Neural Engine в процессорах Apple M4 используется исключительно для инференса — выполнения уже обученных моделей ИИ. Именно для таких задач Apple и позиционирует этот блок, заявляя производительность до 38 TOPS.Однако исследователь безопасности и разработчик под ником @0x0SojalSec сообщил в X, что ему удалось провести обратный инжиниринг существующих ограничений.
В результате команда смогла задействовать до 15,8 TFLOPS вычислительной мощности Neural Engine для полноценных задач обучения, включая обратное распространение ошибки (backpropagation) в трансформерных моделях.Вместо использования стандартных фреймворков Apple, таких как Core ML и Metal, разработчики создали собственный промежуточный язык моделей (Model Intermediate Language, MIL), который позволяет напрямую взаимодействовать с Neural Engine.Для повышения производительности все данные хранятся в оперативной памяти, что избавляет систему от медленных операций записи на накопитель.
ilenta.com