Спустя несколько десятилетий продвижения вглубь тайн вычислений мы вынуждены констатировать: компьютерные системы по-прежнему не могут соревноваться с биологическими нейронными цепями по эффективности мыслительного процесса. Но нам хочется думать, что когда-нибудь кремниевый мозг сравняется по своим возможностям с настоящим, и мы работаем в этом направлении. В авангарде прорыва — нейроморфные чипы, как, например, представленный совсем недавно Intel Loihi 2. В активе у новинки — ряд значительно улучшенных основных характеристик (скажем, количество нейронов на чип выросло почти в 10 раз по сравнению с Loihi 1), а также новый фреймворк Lava для удобства использования.

Intel Loihi 2 является логическим продолжением своего предшественника, в то же время список усовершенствований весьма велик. С аппаратной точки зрения техпроцесс стал в два раза тоньше, что повлекло за собой уменьшение площади чипа и уплотнение его упаковки. Функционально выделим следующие основные преимущества.

  • Универсальные сообщения о событиях. Изначально Loihi поддерживал только бинарные импульсные сообщения. Loihi 2 позволяет импульсам нести целочисленное содержимое с небольшими дополнительными затратами в производительности или энергии.
  • Большая программируемость нейронной модели. Loihi специализировался на одной конкретной модели СНН. Loihi 2 может создавать программируемую цепочку нейронных моделей в каждом нейроморфном ядре для поддержки типичных арифметических инструкций, операций сравнения и т.д.
  • Расширенные возможности обучения. Loihi в основном использовал двухфакторные правила обучения для своих синапсов. Loihi 2 позволяет сетям расставить локализованные «третьи факторы» для конкретных синапсов.
  • Многочисленные оптимизации по части плотности и производительности. Как уже говорилось, в Loihi 2 используется предварительная версия техпроцесса Intel 4. Кроме того, полностью переделаны асинхронные цепи, что повысило скорости: обновления состояния нейрона в два раза, синаптических операций — в 5 раз, генерации импульсов — в 10 раз.
  • Улучшения интерфейса. Loihi 2 предлагает большее количество стандартных интерфейсов, чем Loihi. Список предлагаемых интерфейсов указан в таблице ниже.


Архитектура чипа Intel Loihi 2

Основные характеристики Loihi 2 в сравнении со своим предшественником.
Loihi Loihi 2
Техпроцесс 14 нм Intel 4
Площадь кристалла 60 мм2 31 мм2
Площадь ядра 0,41 мм2 0,21 мм2
Количество транзисторов 2,1 млрд. 2,3 млрд.
Количество нейронных ядер на чип 128 128
Количество процессоров на чип 3 6
Количество нейронов на чип 128 000 1 млн.
Количество синапсов на чип 128 млн. 120 млн.
Память на нейронное ядро 208 кБ, фиксированное размещение 192 кБ, гибкое размещение
Модели нейронов Generalized LIF (Leaky Integrate and Fire) Полностью программируемые
Область состояния нейрона Фиксированная, 24 байт на нейрон 0-4096 байт на нейрон
Кодирование информации Бинарное состояние импульса Ступенчатое состояние спайка, до 32 бит на импульс
Внешние интерфейсы Проприетарный асинхронный интерфейс Стандартные протоколы SPI и AER, GPIO, Ethernet 1000BASE-KX, 2500BASE-KX и 10GBase-KR
В настоящее время уже готово первое базовое устройство для демонстрации возможностей Loihi 2. Оно называется Oheo Gulch и представляет собой плату с одним чипом Loihi 2, а также FPGA Intel Arria 10, предоставляющим интерфейс и удаленный доступ через Ethernet к нейроморфному чипу. Понятно, что в силу своей конфигурации Oheo Gulch — это, скорее, основа для лабораторного тестового стенда, нежели инструмент для решения реальных задач.



Более мощное устройство сейчас находится на подходе, оно называется Kapoho Point и представляет собой стекируемую плату 4x4" с восемью чипами Loihi 2 и портом Ethernet. Kapoho Point предназначен для мобильных применений: робототехники и периферийных систем.

С точки зрения организации работа с новыми нейроморфными устройствами Intel будет устроена по-прежнему. Системы на базе Loihi 2 будут доступны членам Neuromorphic Research Community удаленно через Neuromorphic Research Cloud. Да, пока нейроморфные технологии еще делают свои первые шаги, однако когда-нибудь им суждено выйти «в люди». И очередной шаг на этом пути сделан уже сейчас. Одной из главных проблем в нейроморфных вычисления было отсутствие эффективных программных моделей для подобного рода архитектур. Теперь эта трудность в значительной степени устранена.



Вместе с Loihi 2 вышел первый релиз Lava — фреймворка с открытым исходным кодом для разработки нейро-приложений и развертывании их на нейроморфных платформах. Отметим сразу, что Lava является платформо-независимой, а код структурирован таким образом, чтобы он не был привязан к чипам Intel.

Lava включает в себя Magma, низкоуровневый интерфейс для маппинга и исполнения моделей нейронных сетей на нейроморфных чипах. Этот программный слой включает в себя поддержку кросс-платформенного исполнения, так что приложения могут быть предварительно развернуты на CPU/GPU, а потом перенесены, например, на Loihi 2. Данный слой также содержит профилировщик для измерения и оценки производительности и энергопотребления.

Lava также поддерживает асинхронное прохождение сообщений на основе каналов. Lava определяет, компилирует и исполняет набор процессов, привязанных к платформе гетерогенного исполнения, включающей как традиционные, так и нейроморфные компоненты. Взаимодействие между процессами происходят посредством передающей сообщения о событиях магистрали и API, доступных для всех процессов.

Другие возможности Lava.

  • Оффлайновые тренировки. Lava поддерживает такие инструменты как SLAYER, позволяющие различным построенным на событиях нейросетям быть натренированными оффлайн с использованием метода обратного распространения ошибки и интеграцией с другими модулями Lava.
  • Интеграция со сторонними фреймфорками. Lava поддерживает взаимодействие с такими фреймворками как Robotic Operating System (ROS), YARP, TensorFlow, PyTorch, Nengo и другими.
  • Интерфейсы Python. Для простоты усвоения все библиотеки и функции Lava реализованы для Python с оптимизированными библиотеками и нижележащим C/C++/CUDA/OpenCL кодом для улучшения производительности.
  • Открытый исходный код и неограничивающая лицензия. Lava свободно доступна на GitHub и может работать на CPU/GPU без заключения каких-либо соглашений с Intel. ПО распространяется под лицензиями BSD-3 и LGPL-2.1. Низкоуровневые компоненты, необходимые для развертывания приложений на системах Loihi 2 остаются доступными только для членов Intel NRC без какой-либо оплаты.

Нейроморфные вычисления — пока еще неочевидная, но определенно интересная тема, мы постараемся не упускать ее из виду.

Комментарии (2)


  1. imbasoft
    14.10.2021 15:06

    Есть ли какие-либо практические результаты использования данного чипа? Что он умеет делать лучше, чем другие?


  1. Rutel_Nsk
    14.10.2021 20:44
    +3

    Название процессора явно не для Российского рынка, я при прочтении ни разу не смог прочитать правильно.