Intel Nervana Neural Network Processor

Продукт
Разработчики: Intel
Дата премьеры системы: 2017/10/17
Дата последнего релиза: 2019/11/13
Технологии: Процессоры

Содержание

2019

Анонс NNP-T1000 и NNP-I1000

13 ноября 2019 года компания Intel представила ускорители Intel Nervana Neural Network Processors (NNP) для обучения нейронных сетей (NNP-T1000) и для построения логических выводов (NNP-I1000). Эти первые специализированные микросхемы (ASIC) Intel для решения сложных задач машинного обучения с хорошей масштабируемостью и эффективностью предназначены для заказчиков, развивающих облачные технологии и центры обработки данных. Кроме того, Intel представила поколение визуальных процессоров (Vision Processing Unit или VPU) Intel Movidius Myriad для обработки медиа-данных на периферийных устройствах, создания автономных систем компьютерного зрения и построения логических выводов.

Intel презентовала Intel  Nervana Neural Network Processors (NNP) для обучения нейронных сетей
«
Для дальнейшего прогресса в области искусственного интеллекта необходимы специализированные микросхемы и решения, такие как ускорители нейронных сетей Intel Nervana и визальные ускорители Movidius Myriad. Использование более совершенных форм искусственного интеллекта системного уровня поможет нам перейти от преобразования данных в информацию к переведению информации в знания.

рассказал Навин Рао (Naveen Rao), корпоративный вице-президент Intel, руководитель подразделения Intel по исследованиям в области искусственного интеллекта
»

По информации компании, данные продукты усиливают портфолио решений Intel для работы с ИИ, объем продаж которых в 2019 году, согласно прогнозам, превысит 3,5 млрд. долларов США.

Ускорители нейронных сетей Intel Nervana на ноябрь 2019 года уже запущены в производстве и поставляются заказчикам.

Ускорители нейронных сетей Intel Nervana NNP-T помогают достичь необходимого баланса между вычислительной мощностью, коммуникациями и памятью, обеспечивая возможность практически линейного и энергоэкономичного масштабирования от небольших кластеров до крупнейших суперкомпьютеров. Ускорители Intel Nervana NNP-I эффективны с точки зрения энергопотребления и затрат и идеально подходят для разнообразных интенсивных рабочих нагрузок по построению логических выводов в реальных задачах при использовании разнообразных форм-факторов. Оба продукта были разработаны для выполнения задач, с которыми сталкиваются ведущие заказчики в области ИИ, такие как Baidu и Facebook.

«
Мы рады работать с Intel над развертыванием более быстрых и эффективных вычислений на базе ускорителей нейронных сетей Intel Nervana (NNP-I) и расширению поддержки нашего современного компилятора глубокого обучения Glow, который теперь совместим с NNP-I.

рассказал Миша Смелянский, директор Facebook AI System Co-Design
»

Кроме того, ускоритель Intel Movidius VPU следующего поколения, выпуск которого запланирован на первую половину 2020 года, оснащен высокоэффективными архитектурными решениями, которые, как ожидается, обеспечат лидирующую производительность: скорость вычислений увеличится более чем в десять раз по сравнению с предыдущим поколением. При этом по своей энергоэффективности процессор в шесть раз превосходит решения конкурентов. Intel также представила предложение для периферии Intel DevCloud, которое вместе с инструментарием Intel Distribution из OpenVINO поможет решить ключевую проблему разработчиков, позволяя им пробовать, создавать прототипы и тестировать решения с применением ИИ на различных процессорах Intel, прежде чем закупать оборудование.

Анонс Nervana NNP-I (Springhill) — первого процессора Intel для задач машинного обучения

20 августа 2019 года Intel представила первый в своём ассортименте процессор для машинного обучения. Решение под названием Nervana NNP-I (Springhill) предназначено для использования в крупных дата-центрах и, по мнению компании, способствуют широкому внедрению искусственного интеллекта.

Новинка, разработанная в лабораториях Intel в Хайфе (Израиль), основана на модифицированном 10-нанометровом процессоре Ice Lake и способна обрабатывать интенсивные процессы при минимальном потреблении энергии, передаёт Reuters.

Intel представила первый процессор для машинного обучения

Процессор работает на печатной плате, которая вставляется в порт М.2. Идея Intel заключается в том, чтобы исключить стандартные процессоры Xeon из логических задач и сосредоточить их на более общих вычислительных процессах.

Аналитик Холгер Мюллер (Holger Mueller) из Constellation Research говорит, что такая конструкция пару десятилетий назад называлась сопроцессором. Она действительно разгружает основные процессоры Xeon, но пока неясно, смогут ли новые решения конкурировать с более специализированными архитектурами, создаваемые на основе графических процессоров, отметил эксперт.

Матрица Springhill поставляется с двумя контроллерами памяти LPDDR4X, которые подключаются к встроенной памяти и обеспечивают пропускную способность до 4,2 ГТ/с (68 ГБ/с), поддерживая внутриполосную ECC.

«
Для того чтобы достичь цели повсеместного распространения ИИ, мы должны решить проблему громадного объема полученных данных и убедиться, что организации оснащены всем необходимым для того, чтобы эффективно использовать данные и обрабатывать их по мере поступления, — говорит руководитель подразделения Intel Artificial Intelligence Products Group Навин Рао. — Компьютерам необходимо ускорение для комплексных приложений искусственного интеллекта.
»

Одним из первых клиентов Intel, которая начала использовать Nervana NNP-I, стала Facebook.[1]

2018: Как Intel покушается на лидерство Nvidia в процессорах для искусственного интеллекта

По состоянию на 2018 год практически все приложения, так или иначе связанные с нейронными сетями, работают на серверах компании Nvidia, а если иных, то все равно на GPU Nvidia. Как свидетельствует отчет Gartner[2], альтернатив нет. Но есть серьезный шанс на то, что усилиями Intel монополия Nvidia будет нарушена. Конкурентом, способным потеснить, а может быть даже и сместить GPU с позиции лидера, станут новые, не имеющие аналогов процессоры Intel Nervana Neural Network Processor (NNP). В них, как следует из названия, реализована интеллектуальная собственность, приобретенная Intel вместе с компанией Nervana в 2016 году.

Процессор Intel Nervana Neural Network Processor (NNP)

О серьезности намерений Chipzilla (так называют Intel за ее гигантизм) свидетельствует интервью генерального директора Брайана Кржанича, которое он дал Wall Street Journal в октябре 2017 года. В нем он сказал:

«
В наше время любая компания, любое серьезное приложение оказываются так или иначе связанными с искусственным интеллектом (ИИ). Например, мы выполнили совместную работу с производителем джинсовой одежды Levi Strauss. Используя методы ИИ мы смогли выяснить предпочтения в выборе покупателей, и теперь Levi может более адресно производить те товары, которые пользуются спросом. Это, как и многое другое из того, что наблюдаем, побудило нас серьезно заняться специализированными процессорами для нейронных сетей. Мы поставили своей задачей к 2020 году обойти на два порядка тех, кто сегодня лидирует в этом сегменте рынка. Мы нацелены, прежде всего, на таких гиперскейлеров как Google, Facebook, Amazon и Alibaba
»

Удача Nvidia

Чтобы оценить преимущества решений, заложенных в NNP, нужно сказать несколько слов о том, как и почему GPU от Nvidia заняли свое нынешнее привилегированное положение. Прежде компания Nvidia, наряду с ATI (брэнд этой компании сохранился в названии процессоров AMD Radeon), существовала в роли одного из двух ведущих производителей процессоров для игр, то есть процессоров, ориентированных на графику. Ее положение заметно изменилось в 2006 году с началом производства процессоров серии GeForce 8. Первый GPU G80 и последующие модели сохраняли не только требуемую для анимации шейдерную архитектуру с поддержкой DirectX 10, OpenCL и Shader Model 4.0, но к тому же оказались способны поддерживать программно-аппаратную архитектуру параллельных вычислений CUDA (Compute Unified Device Architecture). Так появилось новая ветвь компьютинга – GPGPU или General Purpose GPU. GPU и CUDA позволяют значительно ускорить параллельные вычисления, поскольку GPU, в отличие от классических CPU, состоят из большего числа мелких и относительно простых ядер.

Сочетание GeForce 8 с CUDA открыло Nvidia возможность изменить свою репутацию производителя оборудования для игр на более престижную позицию поставщика оборудования для вычислений на основе GPU (GPU-accelerated computing). Поначалу ни о каком машинном обучении речи не было. На тот момент оно как массовое явление еще не существовало, но к моменту наступления радикальных изменений в области ИИ «яичко» оказалась готовым. Начиная с 2011 года Nvidia смогла распространить область своих интересов и на ИИ, где за неимением конкурентов стала единоличным лидером.

Дебют GPU в приложении к ИИ был воистину сенсационным. Случилось это так. Для первого широко известного проекта Google Brain, ставившего своей задачей научиться распознаванию кошек и людей в роликах на YouTube, за неимением ничего иного использовались классические серверы на базе CPU. Их потребовалось более 2 000, поэтому не сложно представить во что эксперимент обошелся. Он оказался успешным, но уникальным. Подобную роскошь мало кто кроме Google может себе позволить. Однако ситуация радикально изменилась, когда смешанная команда, состоявшая из исследователей Nvidia Research и Стэнфордского университета, смогла добилась того же результата буквально за копейки. Им потребовалось всего-то 12 GPU. Неожиданная демократизация платформы открыла качественно новые перспективы для развития машинного обучения. В итоге GPU Nvidia на годы стали стандартом де-факто.

Проект Google Brain ставил своей задачей научиться распознавать кошек и людей в роликах на YouTube. Для этого использовадись классические серверы на базе CPU


Отдавая должное, журнал Nature писал: «Первые реальные достижения в области машинного обучения оказались возможны благодаря графическим процессорам, они открыли возможность повысить скорость обучение сетей в 10—20 раз». А на пару лет позже, по данным самой Nvidia, опубликованным в 2016 году, скорость тренировки сетей возросла в 50 раз. В ближайшие годы она увеличится еще на порядок.

С неожиданно возникшей заинтересованностью ее продуктами со стороны ИИ компании Nvidia несказанно повезло. Благоприятное стечение обстоятельств поставило ее в удачную позицию, как говорят «нужный товар оказался в нужное время и в нужном месте». Не будь GPU от Nvidia, не было бы стремительного старта машинного обучения, который мы наблюдаем. Но, как всегда не обходится без «но», и более поздние GPU всего лишь адаптированы к задачам машинного обучения. В этом типе процессора изначально не учтена специфика ИИ-приложений. И нет ничего удивительного в том, что десятки компаний занялись разработкой специализированных процессоров для машинного обучения.

Успех Nvidia побудил к началу активной гонки за лидером. Вариантов проектируемых процессоров для ИИ множество, спектр решений распространяется от нейроморфных процессоров, моделирующих поведение мозга, до GPU, являющихся усовершенствованием классических CPU. Состав участников гонки чрезвычайно разнообразен, тут и признанные процессорные вендоры, и гиганты-гиперскейлеры, и многочисленные китайские компании. Вариаций решений множество, но самое важное заключается в необходимости решить традиционную проблему инженерного компромисса – выбрать такой подход, который был бы достаточно консервативен, чтобы быть реализуемым и экономически оправданным, но при этом достаточно революционным, чтобы обеспечить качественные и количественные преимущества. С этой проблемой Intel справляется удачно и явно занимает первое место среди преследователей.

Подход Intel

Корпорация Intel с ее возможностями определила для себя сразу три различающихся по степени радикальности направления. Первое, само близкое, обещающее самые быстрые результаты – это специализированный процессор для нейронных сетей Intel Nervana Neural Network Processor (NNP). Второе рассчитано на среднесрочную перспективу – это нейроморфный процессор Loihi, названный «первым чипом, способным к самообучению» (First-of-Its-Kind Self-Learning Chip Codenamed). Кстати, Лоихи — это подводный действующий вулкан, расположенный в 35 километрах к юго-востоку от острова Гавайи. И третье, рассчитанное на более отдаленную перспективу – это совместная с голландской компанией QuTech разработка квантового чипа.

Технология Lake Crest была приобретена Intel вместе с компанией Nervana

В программе развития технологий для ИИ, объявленной Intel, ключевое место занимает технология Lake Crest, приобретенная в 2016 году вместе с компанией Nervana. Удивительная пропорция - Intel с почти 100 тыс. занятых (и это при той степени автоматизации, которой отличаются полупроводниковые производства) и Nervana со штатом менее 50 человек и купленная за «смешные» $360 млн.

Аналитик из компании Moor Insights & Strategy охарактеризовал смысл сделки следующими словами:

«
Это отнюдь не попытка конкуренции напрямую с Nvidia, которая стала лидером в использовании GPU в области нейронных сетей и глубинного обучения. У Intel есть многоядерные процессоры Xeon Phi, есть FPGA, но нет GPU. Приобретение Nervana — это совершенно иной способ вхождения в рынок технологий для глубинного обучения, не копирующий идею применения универсальных GPU для этих целей, а ориентированный на использование нового типа сопроцессоров, созданных специально для такого рода задач. Для целей глубинного обучения требуется меньшая точность, чем та, которую обеспечивают универсальные GPU, поэтому специализированный процессор теоретически может оказаться производительнее
»

Спустя два года, в 2018 году, обещания 2016 года приобретают зримые черты. Навин Рао, основатель Nervana, а ныне руководитель Intel Artificial Intelligence Products Group, охарактеризовал Intel Nervana NNP следующим образом:

«
Это чип, созванный для машинного обучения. Нашей целью была такая архитектура, которая сочетала бы гибкость с максимальным использованием всех компонентов. Мы проектировали Intel Nervana NNP с нуля, будучи свободными от любых ограничений, связанных с существующими архитектурами, исключительно для целей ИИ. Особое внимание уделено двум основным типам операций на матрицах – умножениям и сверткам, которые, по своим запросам к процессору, существенно отличаются от традиционных нагрузок, их действия и перемещения данных сложно прогнозировать. По этой причине в Intel Nervana NNP нет стандартной иерархии стеков и по иному организовано управлением памятью, находящейся на самом чипе
»

Новый формат представления данных Flexpoint и пространственная архитектура Spatial Architectures избавили Intel Nervana NNP от двух генетических недостатков, присущих GPU и CPU, которые, во-первых, слишком точно считают, бесполезно затрачивая транзисторы и энергию, и, во-вторых, сохраняют верность схеме фон-Неймана с ее «бутылочным горлом» между процессором и памятью[3], что ограничивает параллелизм.

Локальная революция

Десятилетиями развитие микропроцессоров сопровождалась ростом разрядности. Самый первый из них Intel 4004 был всего лишь 4-разрядным, потом появились 8-ми, 16-ти, 32-х (single float или FP32) и 64-х (double float или FP64) разрядные процессоры. Ускорители для HPC, в том числе на базе GPU, имеют разрядность 128 и даже 256. Такая точность счета требуется для многих приложений, но отнюдь не для машинного обучения, во всяком случае в подавляющем большинстве случаев. Поэтому Nvidia был предложен специальный укороченный формат FP16 (half precision), его достаточно на этапе обучения сети (training), а на этапе продуктивной работы с данными (inference) можно вообще ограничиться 8-мью разрядами[4].

Сравнение плавающих форматов FP32 с FP16 и соответственно целочисленных Int16 c Int32 показывает, что более длинные форматы затрачивают на 2 порядка больше энергии и требуют на порядок больше площади на кристалле, чем более короткие. Чем короче используемое слово, тем большее число операций, выполняемых в единицу времени, тем меньше удельные затраты энергии и быстрее выполняются операции над матрицами. Следовательно для машинного обучения, где для повышения производительности от процессоров требуется высокий уровень параллелизма, предпочтительнее процессоры, поддерживающие короткие форматы. В новых моделях Nvidia поддерживаются и 16-ти и 8-разрядные форматы, и есть соответствующие версии CUDA.

Если появление укороченных форматов можно назвать эволюционным шагом, то новации, внедренные в NNP, есть ни что иное, как локальная революция. Во-первых, новый формат данных в дополнение к двум привычным с фиксированной и плавающей точкой. Во-вторых, выполнение команд не в последовательности, приписываемой счетчиком.

В процессорах Intel Nervana NNP разработчики пошли дальше. Они предложили принципиально новый формат, который назвали Flexpoint. Из названия следует, что это гибкий и адаптивный формат, он сделан таким для оптимизации работы нейронных сетей. Разобраться с его сущностью далеко не просто. Для тех, кому интересно, есть подробнейшая статья «Flexpoint: An Adaptive Numerical Format for Efficient Training of Deep Neural Networks». Более популярное изложение философии Flexpoint можно найти в статье «Flexpoint: numerical innovation underlying the Intel Nervana Neural Network Processor».

Предельно же упрощая, можно сказать, что Flexpoint – это качественно новый формат тензорного типа (tensor format). Он создан на основе исследований, выполненных ранее в Корнельском университете, в которых была предложена методика работы с форматами Autoflex. Flexpoint сочетает в себе одновременно свойства целочисленного формата и плавающего формата, что делает его более эффективным, чем, например, FP16. Для узкого круга специалистов, разбирающихся во внутримашинном представлении данных, где все давным-давно сложилось и десятилетиями ничего не меняется, появление нового формата - настоящая сенсация. Можно с уверенностью сказать, что людей с математическим складом ума заинтересует головоломный анализ сути Flexpoint. Пользователю достаточно поверить в его эффективность.

Формат Flexpoint в сочетании с Autoflex открывают возможность автоматической настройки процессора на конкретный формат представления данных, который для них оптимален. На рисунке показана блок-схема работы Autoflex. Она разделена на два этапа. На первом выбирается предпочтительный формат, а на втором – работа с этим форматом.

Блок-схема работы Autoflex

Преодоление "бутылочного горла фон Неймана"

Между мозгом и компьютером, помимо многих других, есть еще одно важнейшее различие. В биологическом мозге нет разделения на процессоры и память, а в компьютере процессор и память – это две основные составляющие схемы фон-Неймана, третья - устройства ввода/вывода. Наличие канала между процессорами и памятью накладывает непреодолимые ограничения на эффектность этой схемы, его называют «бутылочным горлом» фон-Неймана[5][6]. Для преодоления этого в современных процессорах есть многоуровневые кэш-памяти, которые призваны компенсировать описанное ограничение. Однако возможностей кэшей достаточно для счетных задач, но они не справляются с потребностями машинного обучения, где приходится иметь дело с существенно большими объемами данных. По этой причине у GPU, в которых реализована схема фон-Неймана, долговременной перспективы нет.

В понимании ограниченности процессоров, созданных по схеме фон-Неймана, с 90-х годов разрабатываются схемы, наподобие мозга, совмещающие на одном кристалле и память, и процессоры. Например, одним из первых решений этого типа был асинхронный массив простых процессоров AsAP (Asynchronous Array of Simple Processors). Процессор Intel Nervana NNP создан по одной из современных схем этого типа, которая называется Coarse-Grained Spatial Architectures, где небольшие процессорные элементы PE образуют пространственную (Spatial) структуру. Архитектура слишком сложна для описания в коротком обзоре, желающим разобраться можно порекомендовать несколько статей:

17 октября 2017 года, когда генеральный директор корпорации Intel Брайан Кржанич (Brian Krzanich) объявил о выпуске процессора Intel Nervana Neural Network Processor[7], он пообещал, что продукт трансформирует ИТ-отрасль и весь мир.

В Intel отметили, что новый процессор должен совершить революцию в области искусственного интеллекта (ИИ) в самых различных отраслях. С помощью Intel Nervana компании смогут разрабатывать совершенно новые классы ИИ-приложений, позволяющих обрабатывать еще больше данных и трансформирующих бизнес.

Робототехника



Примечания



СМ. ТАКЖЕ (1)


Подрядчики-лидеры по количеству проектов

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Т1 Интеграция (ранее Техносерв) (4)
  МЦСТ (4)
  Микрон (Mikron) (4)
  Lenovo (4)
  ИНЭУМ им. И.С. Брука (3)
  Другие (48)

  Cloud4Y (ООО Флекс) (1)
  Huawei Россия (Хуавэй) (1)
  Intel (1)
  Lenovo (1)
  TSMC (1)
  Другие (4)

  ISBC Group (Интеллектуальные системы управления бизнесом) (1)
  МЦСТ (1)
  Национальный центр информатизации (НЦИ) (1)
  Норси-Транс (НТ) (1)
  Трансинформ (1)
  Другие (0)

  БПС Инновационные программные решения (ранее БПЦ Банковские технологии) (1)
  Другие (0)

  Микрон (Mikron) (1)
  РСК (группа компаний, ранее - РСК Скиф) (1)
  Другие (0)

Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров

За всю историю
2021 год
2022 год
2023 год
Текущий год

  МЦСТ (8, 22)
  Микрон (Mikron) (2, 9)
  Oracle (1, 7)
  Nvidia (Нвидиа) (17, 6)
  Intel (36, 5)
  Другие (193, 15)

  Байкал Электроникс (Baikal Electronics) (1, 2)
  Intel (1, 1)
  Huawei (1, 1)
  Nvidia (Нвидиа) (1, 1)
  Микрон (Mikron) (1, 1)
  Другие (0, 0)

  МЦСТ (2, 2)
  Микрон (Mikron) (1, 1)
  Т-Платформы (T-Platforms) (1, 1)
  Другие (0, 0)

  МЦСТ (1, 1)
  Другие (0, 0)

  Микрон (Mikron) (1, 1)
  Intel (1, 1)
  Другие (0, 0)

Распределение базовых систем по количеству проектов, включая партнерские решения (проекты, партнерские проекты)

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Эльбрус - 15 (8, 7)
  Микрон Интегральные микросхемы MIK - 9 (9, 0)
  Oracle SPARC - 7 (7, 0)
  Intel Xeon Scalable - 5 (5, 0)
  Nvidia Volta - 3 (0, 3)
  Другие 7

  Baikal-M - 2 (2, 0)
  Nvidia Volta - 1 (0, 1)
  Huawei Kunpeng (процессоры) - 1 (1, 0)
  Микрон Интегральные микросхемы MIK - 1 (1, 0)
  Другие -1

  Эльбрус - 1 (1, 0)
  Микрон Интегральные микросхемы MIK - 1 (1, 0)
  Эльбрус-8С - 1 (1, 0)
  Другие 0

  Эльбрус - 1 (1, 0)
  Другие 0

  Микрон Интегральные микросхемы MIK - 1 (1, 0)
  Другие 0