NNP-T - новый нейропроцессор от IntelКомпания Intel представила подробное описание нового нейропроцессора NNP-T (Nervana Neural Network Processor for Training) на симпозиуме Hot Chips 31, прошедшем 18 – 20 августа в кампусе Стэнфордского университета.
NNP-T выпускается в формате мезонинной карты OCP, популярном в центрах обработки данных. Микросхема работает на частоте 1,1 ГГц и потребляет от 150 до 250 Вт в конфигурациях с воздушным охлаждением, а в будущем возможно повышение производительности с переходом на водяное охлаждение.
Технически это однокристальная система, содержащая 24 тензорных ядра, 32 Гбайт памяти и 16 линий PCIe 4.0.
Четыре чипа по 8 Гбайт подключены через высокоскоростной интерфейс HBM2. Для внутренних соединений используются 64 линии SerDes с пропускной способностью по 28 ГБ/с (3,58 Тбит/с). Пиковая производительность составляет
119 TOPS (триллионов операций в секунду).
Эта система на кристалле ранее была известна под названием Spring Crest Deep Learning Accelerator. Она призвана ускорить процесс обучения искусственных нейронных сетей и сделать его более энергоэффективным.
По словам представителей Intel, сложность наборов данных для нейросетей удваивается примерно каждые пять месяцев.
Сейчас для обучения на них используют связку из серверных процессоров Xeon и графических ускорителей Nvidia, но в такой универсальной конфигурации ресурсы используются слишком нерационально.
Основная проблема в том, что данные постоянно перемещаются между графической и системной памятью, а промежуточные вычисления синхронизируются у вычислительных блоков разной архитектуры.
Минимизация перемещения данных – ключевой принцип Nervana. Тензорные ядра NNP-T используют механизм Convolution Engine, который позволяет считывать данные из памяти и сразу преобразовывать их с помощью сверточных фильтров перед операциями умножения матриц.
В них реализована оптимизация вычислений bFloat16, FP32 и BF16, поддержка набора инструкций AVX512 и внеочередное исполнение инструкций на конвейерах с улучшенной точностью прогнозирования ветвлений.
NNP-T легко масштабируется в систему из 8 процессоров и даже сеть из нескольких узлов, соединённых по скоростному каналу. Архитектура поддерживает масштабирование до 1024 узлов с восемью NNP-T в каждом.
Нейропроцессор выпускается по 16-нм процессу TSMC CLN16FF+. Он содержит 27 млрд. транзисторов, размещённых на подложке площадью 688 кв. мм. В ней находятся основные вычислительные блоки – 24 тензорных ядра (TPCs).
Матрица NNP-T окружена четырьмя стеками HBM2-2400 (2,4 ГБ/с) по 8 ГБ каждый, которые расположены поверх промежуточного слоя площадью 1200 кв. м.
Каждый TPC имеет четыре высокоскоростные шины, две из которых предназначены для памяти HBM2, а две другие поддерживают связь с другими TPCs.
Intel стремится упростить труд разработчиков, реализовав большую часть функций в библиотеке nGraph с открытым исходным кодом и предоставляя компилятор, объединяющий платформы Paddle Paddle, Pytorch и TensorFlow.
До конца текущего года Intel предоставит образцы NNP-T своим ключевым партнёрам. Скорее всего, это будут облачные провайдеры первого уровня. Для широкого рынка будет доступна уже обновлённая ревизия NNP-T, которая выйдет не ранее 2020 года.
Источник: https://www.anandtech.com/show/14757/hot-chips-live-blogs-intel-spring-crest-nnpt-on-16nm-tsmc