AI-ускоритель - AI accelerator

An AI-ускоритель это класс специализированных аппаратный ускоритель[1] или компьютерная система[2][3] предназначен для ускорения искусственный интеллект приложения, особенно искусственные нейронные сети, рекуррентная нейронная сеть,[4] машинное зрение и машинное обучение. Типичные приложения включают алгоритмы для робототехника, Интернет вещей и другие данные -интенсивные или сенсорные задачи.[5] Они часто многоядерный дизайн и в целом сосредоточиться на низкая точность арифметика, роман архитектуры потока данных или вычисления в памяти возможности.[6] По состоянию на 2018 год, типичный ИИ Интегральная схема чип содержит миллиарды из МОП-транзистор транзисторы.[7]Для устройств этой категории существует ряд терминов, зависящих от производителя, и это новые технологии без доминирующий дизайн.

История

Компьютерные системы часто дополняли ЦПУ со специальными ускорителями для специализированных задач, известными как сопроцессоры. Примечательный зависящий от приложения аппаратные единицы включают видеокарты за графика, звуковые карты, графические процессоры и цифровые сигнальные процессоры. Так как глубокое обучение и искусственный интеллект рабочие нагрузки стали заметнее в 2010-х годах, специализированное оборудование было разработано или адаптировано из существующих продуктов для ускоряться эти задачи.

Ранние попытки

Еще в 1993 г. цифровые сигнальные процессоры использовались как ускорители нейронных сетей, например ускоряться оптическое распознавание символов программного обеспечения.[8] В 1990-х годах также были попытки создать параллельные высокопроизводительные системы для рабочих станций, предназначенные для различных приложений, включая моделирование нейронных сетей.[9][10][11] FPGA -содержащие ускорители также были впервые исследованы в 1990-х годах для обоих выводов.[12] и обучение.[13] ANNA была нейронной сетью CMOS ускоритель разработан Янн ЛеКун.[14]

Гетерогенные вычисления

Гетерогенные вычисления относится к объединению ряда специализированных процессоров в единую систему или даже на одну микросхему, каждый из которых оптимизирован для определенного типа задач. Архитектуры, такие как Микропроцессор клетки[15] имеют функции, существенно совпадающие с ускорителями ИИ, включая: поддержку упакованной арифметики с низкой точностью поток данных архитектура и приоритет «пропускной способности» над задержкой. Микропроцессор Cell впоследствии применялся для решения ряда задач.[16][17][18] в том числе AI.[19][20][21]

в 2000-е, Процессоры также получил все более широкое SIMD блоки, управляемые видео- и игровыми нагрузками; а также поддержка упакованный низкая точность типы данных.[22]

Использование GPU

Блоки обработки графики или графические процессоры - это специализированное оборудование для обработки изображений и вычисления локальных свойств изображения. Математические основы нейронных сетей и манипулирование изображениями похожи, смущающе параллельный задачи, связанные с матрицами, что приводит к тому, что графические процессоры все чаще используются для задач машинного обучения.[23][24][25] По состоянию на 2016 год, Графические процессоры популярны для работы с искусственным интеллектом, и они продолжают развиваться в направлении облегчения глубокого обучения, как для обучения[26] и логический вывод в таких устройствах, как беспилотные автомобили.[27] Разработчики графических процессоров, такие как Nvidia NVLink разрабатывают дополнительные возможности подключения для рабочих нагрузок, связанных с потоками данных, от которых выигрывает ИИ.[28] Поскольку графические процессоры все чаще используются для ускорения ИИ, производители графических процессоров включают нейронная сеть конкретный оборудование для дальнейшего ускорения этих задач.[29][30] Тензор ядра предназначены для ускорения обучения нейронных сетей.[30]

Использование ПЛИС

Фреймворки глубокого обучения все еще развиваются, что затрудняет разработку нестандартного оборудования. Реконфигурируемый такие устройства, как программируемые вентильные матрицы (FPGA) упрощают разработку оборудования, фреймворков и программного обеспечения рядом друг с другом.[31][12][13][32]

Microsoft использовала микросхемы FPGA для ускорения вывод.[33] Применение ПЛИС для ускорения ИИ мотивировано Intel приобрести Альтера с целью интеграции ПЛИС в серверные ЦП, которые будут способны ускорять ИИ, а также общее назначение задачи.[34]

Появление специализированных ASIC для ускорителей искусственного интеллекта

Хотя графические процессоры и FPGA работают намного лучше[количественно оценить ] чем процессоры для задач, связанных с искусственным интеллектом, эффективность до 10 раз[35][36] может быть получен с более конкретным дизайном, через специализированная интегральная схема (ASIC).[нужна цитата ] Эти ускорители используют такие стратегии, как оптимизированные использование памяти[нужна цитата ] и использование арифметика с низкой точностью для ускорения расчета и увеличения пропускная способность вычисления.[37][38] Некоторые приняли низкую точность форматы с плавающей запятой используемое ускорение AI половинная точность и bfloat16 формат с плавающей запятой.[39][40][41][42][43][44][45] Такие компании, как Facebook, Amazon и Google, разрабатывают собственные ASIC для искусственного интеллекта.[46][47]

Архитектуры вычислений в памяти

В июне 2017 г. IBM исследователи объявили архитектуру в отличие от Архитектура фон Неймана на основе вычисления в памяти и память с фазовым переходом массивы, применяемые к временным корреляция обнаружения, намереваясь обобщить подход к гетерогенные вычисления и массивно параллельный системы.[48] В октябре 2018 года исследователи IBM анонсировали архитектуру, основанную на обработка в памяти и по образцу синаптической сети человеческого мозга ускоряться глубокие нейронные сети.[49] Система основана на память с фазовым переходом массивы.[50]

Атомарно тонкие полупроводники

В 2020 году Marega et al. опубликованы эксперименты с материалом активного канала большой площади для разработки логических устройств и схем на основе плавающий затвор полевые транзисторы (FGFET).[51] Такой атомарно тонкий полупроводники считаются перспективными для энергоэффективных машинное обучение приложения, в которых одна и та же базовая структура устройства используется как для логических операций, так и для хранения данных. Авторы использовали двумерные материалы, такие как полупроводники. дисульфид молибдена.[51]

Номенклатура

По состоянию на 2016 год эта область все еще находится в движении, и поставщики продвигают свой собственный маркетинговый термин для того, что составляет «ускоритель ИИ», в надежде, что их проекты и API станет доминирующий дизайн. Нет единого мнения ни о границе между этими устройствами, ни о точной форме, которую они примут; однако несколько примеров явно направлены на заполнение этого нового пространства с изрядным дублированием возможностей.

В прошлом, когда потребитель графические ускорители появились, отрасль в конечном итоге приняла Nvidia's самопровозглашенный термин "ГПУ",[52] как собирательное существительное для «графических ускорителей», которое принимало множество форм, прежде чем остановилось на общем конвейере, реализующем модель, представленную Direct3D.

Возможные приложения

Смотрите также

использованная литература

  1. ^ «Intel представляет Movidius Compute Stick USB AI Accelerator». 21 июля 2017 г. Архивировано с оригинал 11 августа 2017 г.. Получено 11 августа, 2017.
  2. ^ «Inspurs представляет GX4 AI Accelerator». 21 июня 2017 года.
  3. ^ Виггерс, Кайл (6 ноября 2019 г.) [2019], Neural Magic собирает 15 миллионов долларов для повышения скорости вывода ИИ на стандартных процессорах, заархивировано из оригинал 6 марта 2020 г., получено 14 марта, 2020
  4. ^ «Обзор аппаратных ускорителей и методов оптимизации для RNN», JSA, 2020 г. PDF
  5. ^ "Google Developing AI Processors".Google использует собственные ускорители ИИ.
  6. ^ "Обзор архитектур на основе ReRAM для обработки в памяти и нейронных сетей ", С. Миттал, Машинное обучение и извлечение знаний, 2018 г.
  7. ^ "13 секстиллионов и счет: длинный и извилистый путь к самому часто производимому человеческому артефакту в истории". Музей истории компьютеров. 2 апреля 2018 г.. Получено 28 июля, 2019.
  8. ^ "Демонстрация сверточной нейронной сети 1993 года с ускорителем DSP32".
  9. ^ "проектирование сетевого суперкомпьютера".
  10. ^ «Конец компьютеров общего назначения (не)».В этой презентации рассматривается предыдущая попытка создания ускорителей нейронных сетей, отмечается сходство с современной настройкой процессора SLI GPGPU и утверждается, что векторные ускорители общего назначения - это путь вперед (в отношении проекта RISC-V hwacha. Утверждается, что NN просто плотные и разреженные матрицы, один из нескольких повторяющихся алгоритмов)
  11. ^ Ramacher, U .; Raab, W .; Hachmann, J.A.U .; Beichter, J .; Bruls, N .; Wesseling, M .; Sicheneder, E .; Glass, J .; Wurz, A .; Маннер, Р. (1995). Материалы 9-го Международного симпозиума по параллельной обработке. С. 774–781. CiteSeerX  10.1.1.27.6410. Дои:10.1109 / IPPS.1995.395862. ISBN  978-0-8186-7074-9.
  12. ^ а б «Эффективная реализация нейронной сети».
  13. ^ а б Gschwind, M .; Salapura, V .; Майшбергер, О. (1996). «Общий строительный блок для нейронных сетей Хопфилда с обучением на кристалле». 1996 Международный симпозиум IEEE по схемам и системам. Цепи и системы, соединяющие мир. ISCAS 96. С. 49–52. Дои:10.1109 / ISCAS.1996.598474. ISBN  0-7803-3073-0. S2CID  17630664.
  14. ^ «Применение микросхемы нейронной сети ANNA для высокоскоростного распознавания символов» (PDF).
  15. ^ Гшвинд, Майкл; Хофсти, Х. Питер; Флакс, Брайан; Хопкинс, Мартин; Ватанабэ, Юкио; Ямазаки, Такеши (2006). «Синергетическая обработка в многоядерной архитектуре Cell». IEEE Micro. 26 (2): 10–24. Дои:10.1109 / MM.2006.41. S2CID  17834015.
  16. ^ Де Фабритиис, Г. (2007). «Производительность процессора Cell для моделирования биомолекул». Компьютерная физика Коммуникации. 176 (11–12): 660–664. arXiv:физика / 0611201. Дои:10.1016 / j.cpc.2007.02.107.
  17. ^ «Обработка и поиск видео по архитектуре ячейки». CiteSeerX  10.1.1.138.5133. Цитировать журнал требует | журнал = (Помогите)
  18. ^ Бентин, Карстен; Уолд, Инго; Шербаум, Майкл; Фридрих, Хайко (2006). Симпозиум IEEE 2006 г. по интерактивной трассировке лучей. С. 15–23. CiteSeerX  10.1.1.67.8982. Дои:10.1109 / RT.2006.280210. ISBN  978-1-4244-0693-7.
  19. ^ «Разработка искусственной нейронной сети на гетерогенной многоядерной архитектуре для прогнозирования успешной потери веса у людей с ожирением» (PDF).
  20. ^ Квон, Бомджун; Чой, Тайхо; Чанг, Хиджин; Ким, Джеонхо (2008). 2008 5-я конференция IEEE Consumer Communications and Networking Conference. С. 1030–1034. Дои:10.1109 / ccnc08.2007.235. ISBN  978-1-4244-1457-4.
  21. ^ Дуан, Растирание; Стрей, Альфред (2008). Euro-Par 2008 - Параллельная обработка. Конспект лекций по информатике. 5168. С. 665–675. Дои:10.1007/978-3-540-85451-7_71. ISBN  978-3-540-85450-0.
  22. ^ «Повышение производительности видео с помощью AVX». 8 февраля 2012 г.
  23. ^ "исследования Майкрософт / пиксельные шейдеры / MNIST".
  24. ^ «Как GPU стал использоваться для общих вычислений».
  25. ^ "классификация изображений с помощью глубоких сверточных нейронных сетей" (PDF).
  26. ^ "NVIDIA способствует развитию глубокого обучения". 17 мая 2016 года.
  27. ^ «nvidia представляет суперкомпьютер для беспилотных автомобилей». 6 января 2016 г.
  28. ^ "как nvlink позволит ускорить и упростить вычисления на нескольких GPU". 14 ноября 2014 г.
  29. ^ "Обзор оптимизированной реализации моделей глубокого обучения на платформе NVIDIA Jetson ", 2019
  30. ^ а б Харрис, Марк (11 мая 2017 г.). «Раскрыты возможности CUDA 9: Volta, совместные группы и многое другое». Получено 12 августа, 2017.
  31. ^ Сефат, Md Syadus; Аслан, Семих; Келлингтон, Джеффри В. Касем, Апан (август 2019 г.). «Ускорение точек доступа в глубоких нейронных сетях на ПЛИС на основе CAPI». 21-я Международная конференция по высокопроизводительным вычислениям и коммуникациям IEEE 2019 г .; 17-я Международная конференция IEEE по умному городу; 5-я Международная конференция IEEE по наукам о данных и системам (HPCC / SmartCity / DSS): 248–256. Дои:10.1109 / HPCC / SmartCity / DSS.2019.00048.
  32. ^ «Ускорители глубокого обучения на основе FPGA берут на себя ASIC». Следующая платформа. 23 августа 2016 г.. Получено 7 сентября, 2016.
  33. ^ "Проект Brainwave". Microsoft Research. Получено 16 июня, 2020.
  34. ^ "Обзор ускорителей на базе FPGA для сверточных нейронных сетей ", Миттал и др., NCAA, 2018 г.
  35. ^ «Google развивает машинное обучение с помощью своего модуля тензорной обработки». 19 мая 2016 г.. Получено 13 сентября, 2016.
  36. ^ «Чип может принести глубокое обучение на мобильные устройства». www.sciencedaily.com. 3 февраля 2016 г.. Получено 13 сентября, 2016.
  37. ^ «Глубокое обучение с ограниченной числовой точностью» (PDF).
  38. ^ Растегари, Мохаммад; Ордонез, Висенте; Редмон, Джозеф; Фархади, Али (2016). «XNOR-Net: Классификация ImageNet с использованием двоичных сверточных нейронных сетей». arXiv:1603.05279 [cs.CV ].
  39. ^ Хари Джонсон (23 мая 2018 г.). «Intel представляет Nervana Neural Net L-1000 для ускоренного обучения ИИ». VentureBeat. Получено Двадцать третье мая, 2018. ... Intel будет расширять поддержку bfloat16 на наши линейки продуктов AI, включая процессоры Intel Xeon и Intel FPGA.
  40. ^ Майкл Фельдман (23 мая 2018 г.). «Intel излагает новую дорожную карту для портфеля ИИ». ТОП500 суперкомпьютерных сайтов. Получено Двадцать третье мая, 2018. Intel планирует поддерживать этот формат во всех своих продуктах AI, включая линейки Xeon и FPGA.
  41. ^ Лучиан Армасу (23 мая 2018 г.). «Intel выпустит Spring Crest, свой первый процессор нейронной сети, в 2019 году». Оборудование Тома. Получено Двадцать третье мая, 2018. Intel заявила, что NNP-L1000 также будет поддерживать bfloat16, числовой формат, который используется всеми игроками индустрии машинного обучения для нейронных сетей. Компания также будет поддерживать bfloat16 в своих FPGA, Xeon и других продуктах машинного обучения. Выпуск Nervana NNP-L1000 запланирован на 2019 год.
  42. ^ "Доступные операции TensorFlow | Cloud TPU | Google Cloud". Google Cloud. Получено Двадцать третье мая, 2018. На этой странице перечислены API-интерфейсы TensorFlow Python и операторы графиков, доступные в Cloud TPU.
  43. ^ Эльмар Хаусманн (26 апреля 2018 г.). "Сравнение Google TPUv2 с Nvidia V100 в ResNet-50". Блог RiseML. Архивировано из оригинал 26 апреля 2018 г.. Получено Двадцать третье мая, 2018. Для Cloud TPU Google рекомендовал использовать реализацию bfloat16 из официального репозитория TPU с TensorFlow 1.7.0. Реализации как TPU, так и GPU используют вычисления со смешанной точностью в соответствующей архитектуре и хранят большинство тензоров с половинной точностью.
  44. ^ Авторы Tensorflow (28 февраля 2018 г.). «ResNet-50 с использованием BFloat16 на ТПУ». Google. Получено Двадцать третье мая, 2018.[постоянная мертвая ссылка ]
  45. ^ Джошуа В. Диллон; Ян Лэнгмор; Дастин Тран; Юджин Бревдо; Шринивас Васудеван; Дэйв Мур; Брайан Паттон; Алекс Алеми; Мэтт Хоффман; Риф А. Саурус (28 ноября 2017 г.). Распределения TensorFlow (отчет). arXiv:1711.10604. Bibcode:2017arXiv171110604D. Проверено 23 мая 2018 г. Все операции в дистрибутивах TensorFlow численно стабильны для половинной, одинарной и двойной точности с плавающей запятой (как типы TensorFlow: tf.bfloat16 (усеченная с плавающей запятой), tf.float16, tf.float32, tf.float64). Конструкторы классов имеют флаг validate_args для числовых утверждений
  46. ^ «Facebook опубликовал новую вакансию для разработчиков микросхем».
  47. ^ «Подпишитесь, чтобы прочитать | Financial Times». www.ft.com.
  48. ^ Абу Себастьян; Томаш Тума; Николаос Папандреу; Мануэль Ле Галло; Лукас Кулл; Томас Парнелл; Евангелос Элефтериу (2017). «Обнаружение временной корреляции с использованием вычислительной памяти с фазовым переходом». Nature Communications. 8. arXiv:1706.00511. Дои:10.1038 / s41467-017-01481-9. PMID  29062022.
  49. ^ «Новая архитектура, вдохновленная мозгом, может улучшить обработку данных компьютерами и продвинуть ИИ». Американский институт физики. 3 октября 2018 г.. Получено 5 октября, 2018.
  50. ^ Карлос Риос; Натан Янгблад; Zengguang Cheng; Мануэль Ле Галло; Вольфрам Х.П. Пернис; C Дэвид Райт; Абу Себастьян; Хариш Бхаскаран (2018). «Вычисления в памяти на фотонной платформе». arXiv:1801.06228 [cs.ET ].
  51. ^ а б Марега, Гильерме Мильято; Чжао, Яньфэй; Авсар, Ахмет; Ван, Чжэньюй; Трипати, Мукеш; Раденович, Александра; Кис, Анрас (2020). «Логика в памяти на атомарно тонком полупроводнике». Природа. 587 (2): 72–77. Дои:10.1038 / s41586-020-2861-0.
  52. ^ «NVIDIA запускает первый в мире графический процессор GeForce 256».
  53. ^ «Технологии и решения для беспилотных автомобилей от NVIDIA Automotive». NVIDIA.
  54. ^ «Разработка системы машинного зрения для борьбы с сорняками» (PDF). Архивировано из оригинал (PDF) 23 июня 2010 г.. Получено 17 июня, 2016.
  55. ^ "Qualcomm Research приносит машинное обучение серверного класса на все устройства обработки данных". Октябрь 2015 г.
  56. ^ "Movidius приводит в действие самый умный дрон в мире". 16 марта 2016 г.

внешняя ссылка