Свяжитесь с нами
pусский
Dec 4, 2024337882
Поделиться
Bostk

Bostk

Автор

На переднем крае стремительно растущего спроса на нейронные сети и машинное обучение начинают выделяться NPUs (нейронные процессорные устройства). Хотя традиционные ЦПУ и ГПУ могут справляться с некоторыми задачами, NPUs специально настроены для вычислений нейронных сетей, обеспечивая непревзойденную производительность. В ближайшие годы основная часть задач нейронных сетей будет обрабатываться этими специализированными NPUs, вытесняя ЦПУ и ГПУ в приложениях глубокого обучения.

НПУ — это специализированный процессор, предназначенный для обработки сложных потоков данных нейронных сетей. Эти чипы используют архитектуру параллельных вычислений, которая эффективно обрабатывает огромные объемы мультимедийных данных, таких как изображения и видео, значительно более эффективно, чем универсальные ЦПУ или ГПУ.

В отличие от одноцелевого характера ASIC (интегральные схемы специального назначения), NPUs спроектированы для обработки сетевых вычислений с гибкостью и сложностью. Они используют специализированное программирование, будь то программное обеспечение или аппаратное обеспечение, для удовлетворения строгих требований современных задач сетевых вычислений.

npu pic

Модули процессора NPU: Разблокировка мощности ИИ

NPUs были разработаны с учетом Интернета вещей (IoT) и ИИ, с целью решения проблем неэффективности традиционных чипов при работе с нейронными сетями. Эти чипы оснащены специализированными модулями, которые ускоряют различные математические операции, такие как умножение, сложение и декомпрессия данных. Давайте разберемся:

  • Модуль умножения и сложения: Сердце NPU, отвечающее за обработку умножений матриц, сверток и скалярных произведений. Внутри NPU содержится 64 MAC (unit Multiply-Accumulate), версия SNPU включает 32.
  • Модуль активационной функции: Необходим для реализации активационных функций в нейронных сетях. Этот модуль использует параметры высокого порядка для точности. В NPU находится 6 MAC, а в SNPU — 3.
  • Модуль 2D операций с данными: Обрабатывает операции, основанные на плоскости, такие как понижение частоты и копирование данных. Этот модуль содержит 1 MAC и 1 SNPU.
  • Модуль декомпрессии: Используется для декомпрессии взвешенных данных, что особенно полезно для устройств Интернета вещей с ограниченной пропускной способностью памяти. Благодаря методам сжатия в компиляторе NPU веса сжимаются до 10 раз при практически полном сохранении точности.

NPU: Сердце ИИ в смартфонах

Смартфоны, как мы их знаем сегодня, оснащены сложными SoC (системами на чипе), которые интегрируют несколько функций в одном небольшом пространстве. Эти SoC объединяют мощность ЦПУ, ГПУ и NPU для обработки всего, от приложений и игр до сложных вычислений ИИ. ЦПУ управляет переключением приложений, ГПУ берет на себя тяжелую работу по графике, а NPU занимается задачами ИИ, такими как распознавание лиц, улучшение изображений и многое другое.

Huawei стала пионером в интеграции NPUs в смартфоны, выпустив первый телефон с NPU в 2017 году — Mate 10. Это было настоящим прорывом, так как архитектура Huawei ввела модель ускорения 3D Cube для матричных вычислений. Это позволило обрабатывать больше данных быстрее, с лучшей энергоэффективностью по сравнению с традиционными ЦПУ и ГПУ.

В последующие годы Huawei улучшала свою технологию NPU, переходя от внешних Cambrian NPUs в Mate 10 к собственной Da Vinci NPU в Mate 990. Samsung также интегрировала NPUs в свою линейку Galaxy, улучшив функции ИИ, такие как оптимизация сцены, распознавание контента и улучшение фотографий в реальном времени.

NPU против GPU: Схватка

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

Вот где вступает в игру NPU. Симулируя работу человеческих нейронов и синапсов, NPUs спроектированы для обработки задач глубокого обучения гораздо более эффективно, чем ГПУ или ЦПУ. Если для обработки нейронов ГПУ и ЦПУ требуют тысяч инструкций, NPU может выполнить это за одну инструкцию или несколько. Эта способность приводит к увеличению производительности до 118 раз по сравнению с ГПУ при одинаковом потреблении энергии.

Ключевые различия между процессорными устройствами

Вот краткое описание различных типов процессоров:

  • ЦПУ: Разработан для выполнения общих задач с сильной зависимостью от кеша и управляющих единиц. Не предназначен для интенсивной параллельной обработки.
  • ГПУ: Оптимизирован для параллельных вычислений, но по-прежнему требует ЦПУ для совместной обработки. Отлично подходит для работы с графикой и обработкой изображений, но неэффективен для ИИ.
  • NPU: Спроектирован для имитации нейронных сетей мозга, NPUs обрабатывают вычисления ИИ с помощью специализированных инструкций. Идеальны для задач, требующих низкого потребления энергии, таких как мобильный ИИ.
  • FPGA: Исключительно эффективны и настраиваемы, FPGA используются для конкретных вычислительных задач. Они гибкие, но требуют другого уровня знаний для программирования.

Практическое применение NPU

NPUs производят фурор в различных областях, особенно в приложениях, улучшенных ИИ:

  • Распознавание сцен ИИ: NPUs управляют распознаванием сцен в камерах, регулируя настройки для оптимальных снимков.
  • Супер ночные сцены: NPU помогает синтезировать сверхночные снимки, анализируя световые и темные детали.
  • Голосовые ассистенты: NPUs обрабатывают голосовые команды более эффективно, обеспечивая работу ИИ-ассистентов.
  • Игры: Предсказывая следующий кадр, NPUs помогают улучшить производительность игры и снизить задержку.
  • Фотография с использованием ИИ: Через обработку в реальном времени NPUs улучшают фотографии, регулируя освещенность, фокусировку и даже создавая эффект боке.

Понимание ландшафта процессоров

  • APU: Процессор с ускоренной обработкой от AMD, предназначенный для эффективной обработки изображений.
  • BPU: Процессор от Horizon, предназначенный для вычислений, напоминающих работу мозга.
  • DPU: Процессор потока данных, разработанный Wave Computing для архитектур ИИ.
  • ГПУ: Процессоры графики, предназначенные для выполнения задач параллельных вычислений, в основном используемые в играх и дата-центрах.
  • TPU: Tensor Processing Unit от Google, специализированный процессор, направленный на ускорение алгоритмов машинного обучения.
  • VPU: Векторный процессор от Intel, предназначенный для обработки изображений и ИИ, приобретенный через Movidius.

Все номера деталей продукции 0 - Z