В начале февраля 2019 года Московский физико-технический институт (МФТИ) сообщил о создании в кооперации с ГосНИИАС и ИНЭУМ первого образца российского специализированного нейросетевого процессора для энергоэффективного выполнения алгоритмов машинного обучения, основанных на математическом аппарате глубоких нейронных сетей. Проект получил название NCore ("энкор"). Расскажем о нем подробнее.
Для чего нужен такой процессор?
Конечно не для игр, а для серьезных и важных задач. Как говорят разработчики, для автоматического решения интеллектуальных задач в области распознавания изображений и человеческой речи, управления беспилотными автомобилями и многих других целей сегодня широко используются алгоритмы машинного обучения, основанные на глубоких нейронных сетях. Такие алгоритмы требуют значительных вычислительных ресурсов, для их выполнения, как правило, используются графические ускорители. При этом энергопотребление графических ускорителей слишком велико для многих мобильных платформ — небольших беспилотных летательных аппаратов, компактных наземных робототехнических комплексов, «умных камер». Поэтому во всем мире сегодня активно развивается направление создания специализированных нейросетевых тензорных процессоров, которые, за счет использования специфических вычислительных свойств нейросетей, способны достигать гораздо более высокой энергоэффективности, чем графические ускорители.
Где будут выпускать российский NCore?
Первые опытные образцы процессора сделаны на зарубежной фабрике по проектным нормам 65 нм, однако в ближайшее время представляется возможным организовать выпуск новинки на отечественном предприятии «Микрон» в Зеленограде. Как говорят в МФТИ, российские ученые разработали основные элементы – процессорные ядра, интерфейсы и основное программное обеспечение: «В частности, наше программное обеспечение для трансляции алгоритмов позволяет отконвертировать нейросеть для запуска ее на системе непосредственно из популярных фреймворков машинного обучения. Сейчас у нас есть прототип системы, изготовленный в кремнии по довольно грубой, по современным меркам, технологии — 65 нм. В дальнейшем мы планируем использовать наши ядра в качестве составных элементов систем на кристалле».
Как проект будет развиваться дальше?
Особо стоит заметить, что первый российский специализированный нейросетевой процессор NCore по достигнутому уровню энергоэффективности сравним с графическими ускорителями, производимыми по проектным нормам 28 нм и менее. Масштабирование разработанной архитектуры при разработке отечественных нейросетевых процессоров с «тонкими» проектными нормами позволит обеспечить научно-технический паритет в области разработки специализированных тензорных процессоров для алгоритмов машинного обучения. В рамках проекта ведется создание автоматического транслятора алгоритмов машинного обучения, разработанных в популярных пакетах TensorFlow, Caffe, Keras. Такая унификация позволит пользователям работать в привычных для них средах.
Первые тесты нового процессора для потенциальных заказчиков запланированы уже на весну 2019 года.