Открыть сервис

Graphcore Intelligence Processing Unit

Graphcore Intelligence Processing Unit (IPU) — это специализированный микропроцессор, разработанный британской компанией Graphcore для ускорения вычислений в области искусственного интеллекта (ИИ) и машинного обучения. В отличие от традиционных графических процессоров (GPU) и центральных процессоров (CPU), архитектура IPU изначально спроектирована для параллельной обработки графов вычислений, характерных для нейронных сетей. Устройство ориентировано на выполнение как обучения, так и инференса (вывода) моделей ИИ, особенно в задачах, требующих высокой производительности при работе с разреженными данными и большими объёмами памяти.

История создания

Компания Graphcore была основана в 2016 году в Бристоле (Великобритания) предпринимателями Саймоном Ноулзом и Найджелом Туном. Разработка IPU началась в ответ на растущие потребности индустрии ИИ в вычислительных ресурсах, которые существующие GPU не могли эффективно удовлетворить из-за своей архитектуры, изначально заточенной под рендеринг графики.

Первое поколение IPU, получившее название GC2 (или Colossus), было анонсировано в 2018 году. Чип содержал 1216 процессорных ядер, каждое из которых могло одновременно выполнять до шести потоков инструкций, и 300 МБ встроенной статической памяти (SRAM). Производительность чипа заявлялась на уровне 125 терафлопс (FP16) при энергопотреблении около 150 Вт.

Второе поколение, Bow IPU, было представлено в 2022 году. Оно использовало технологию 7-нм техпроцесса и технологию упаковки чипов Wafer-on-Wafer (WoW), что позволило удвоить производительность до 350 терафлопс (FP16) и увеличить объём памяти до 900 МБ. В 2023 году Graphcore выпустила систему Bow Pod, объединяющую несколько IPU в единый вычислительный кластер.

В 2024 году компания столкнулась с финансовыми трудностями и была приобретена японским холдингом SoftBank Group. После сделки Graphcore продолжает разработку IPU, но под новым управлением, с фокусом на корпоративный сегмент и облачные вычисления.

Архитектура и принцип работы

Отличие от GPU и CPU

Традиционные GPU (например, NVIDIA) изначально проектировались для параллельной обработки пикселей и вершин в 3D-графике. Их архитектура (SIMT — Single Instruction, Multiple Threads) эффективна для плотных матричных операций, но плохо справляется с разреженными вычислениями и динамическими графами, характерными для современных нейросетей. CPU, в свою очередь, оптимизированы для последовательных задач и низкой задержки, но имеют ограниченное количество ядер.

IPU решает эти проблемы через:

  • Массовый параллелизм: 1216 (GC2) или 1472 (Bow) независимых ядер, каждое со своим блоком управления и памятью.
  • Память, встроенную в чип: весь объём данных для вычислений (веса, активации, градиенты) хранится непосредственно на кристалле, что исключает узкое место шины памяти (как у GPU с HBM).
  • Графовый подход: модель нейросети представляется в виде графа, где узлы — операции, а рёбра — потоки данных. IPU выполняет этот граф целиком, без разбивки на пакеты (батчи), что снижает задержки.

Структура ядра

Каждое ядро IPU (называемое IPU-Core) включает:

  • Арифметико-логическое устройство (ALU) с поддержкой FP16, FP32 и целочисленных операций.
  • Локальную память (SRAM) объёмом около 256 КБ (в GC2) или 624 КБ (в Bow).
  • Управляющий процессор, который может выполнять до шести потоков инструкций одновременно (технология Bulk Synchronous Parallel, BSP).

Ядра объединены в кластеры через высокоскоростную сеть на кристалле (on-chip interconnect) с пропускной способностью до 8 ТБ/с.

Программная модель

Graphcore разработала собственный программный стек Poplar, который включает:

  • Poplar SDK — библиотеки для фреймворков TensorFlow, PyTorch и ONNX.
  • PopART — среда выполнения для инференса.
  • PopVisionинструменты профилирования и отладки.

Программист описывает модель на стандартном фреймворке, а Poplar автоматически компилирует её в граф для IPU, оптимизируя использование памяти и параллелизм.

Классификация и модели

Поколения IPU

ПоколениеМодельТехпроцессЧисло ядерПамять (SRAM)Производительность (FP16)Энергопотребление
1-е (2018)GC2 (Colossus)16 нм1216300 МБ125 ТФлопс150 Вт
2-е (2022)Bow IPU7 нм (WoW)1472900 МБ350 ТФлопс185 Вт

Системные решения

  • IPU-POD — кластер из 4, 8 или 16 IPU, объединённых в единую систему через сеть InfiniBand или Ethernet. Поставляется как готовый сервер.
  • IPU-M2000 — модуль с четырьмя IPU (GC2) и сетевым коммутатором, предназначенный для установки в стандартные стойки.
  • Bow Pod — флагманская система на базе Bow IPU, включающая до 64 чипов в одном шасси.

Применение

Обучение нейросетей

IPU демонстрирует высокую эффективность при обучении моделей, которые плохо масштабируются на GPU из-за ограничений памяти или разреженности графов. К таким задачам относятся:

  • Трансформеры (BERT, GPT) — IPU позволяет обрабатывать последовательности длиной до 128 000 токенов без разбивки на чанки.
  • Графовые нейросети (GNN) — обучение на графах с миллиардами рёбер (например, рекомендательные системы).
  • Рекуррентные сети — LSTM и GRU для обработки временных рядов.

Инференс

Благодаря низкой задержке (менее 1 мс на один запрос) IPU применяется в системах реального времени:

Научные вычисления

IPU используется в биоинформатике (анализ геномов), климатологии (моделирование погоды) и физике высоких энергий (обработка данных с коллайдеров).

Преимущества и недостатки

Преимущества

  • Высокая пропускная способность памяти — вся память на кристалле, что устраняет узкое место шины.
  • Эффективность при разреженных данных — ядра могут обрабатывать только ненулевые элементы, не тратя ресурсы на нули.
  • Масштабируемость — до 64 IPU в одной системе без потери производительности.
  • Низкое энергопотребление — до 2,5 раз меньше, чем у сравнимых GPU (по данным Graphcore).

Недостатки

  • Ограниченная экосистема — меньше библиотек и фреймворков, чем у NVIDIA CUDA.
  • Высокая стоимость — цена одного IPU-POD16 (16 чипов) составляет около 100 000 долларов США.
  • Сложность программирования — требует глубокого понимания архитектуры для достижения пиковой производительности.
  • Зависимость от одного поставщика — после приобретения SoftBank возможны изменения в стратегии развития.

Критика и конкуренция

IPU подвергается критике за то, что его архитектура не является универсальной. В задачах, где графы вычислений плотные и регулярные (например, свёрточные сети для обработки изображений), GPU NVIDIA часто превосходят IPU по производительности и стоимости. Кроме того, экосистема CUDA и TensorRT остаётся доминирующей, что затрудняет внедрение IPU в существующие проекты.

Основные конкуренты:

  • NVIDIA — GPU A100, H100 и B200 с программным стеком CUDA.
  • AMD — GPU Instinct MI300X.
  • Intel — Habana Gaudi 2 и Gaudi 3.
  • Google — TPU (Tensor Processing Unit) v4 и v5.
  • Cerebras Systems — Wafer-Scale Engine (WSE) — чип размером с пластину.

Интересные факты

  • Первый прототип IPU был изготовлен на 16-нм техпроцессе TSMC и содержал 23,6 миллиарда транзисторов.
  • В 2020 году Graphcore вошла в список «50 самых умных компаний мира» по версии MIT Technology Review.
  • Система Bow Pod с 64 IPU способна выполнять 22,4 петафлопса (FP16) — это сопоставимо с производительностью суперкомпьютера середины 2010-х годов.
  • В 2023 году Graphcore объявила о партнёрстве с Microsoft Azure для развёртывания IPU в облаке, однако после приобретения SoftBank проект был приостановлен.

Источники

  • Graphcore. «IPU Architecture Overview» (2018).
  • Graphcore. «Bow IPU Product Brief» (2022).
  • SoftBank Group. «Acquisition of Graphcore» (2024).
  • MIT Technology Review. «50 Smartest Companies 2020» (2020).
  • AnandTech. «Graphcore GC2 Review» (2019).
  • Tom’s Hardware. «Graphcore Bow IPU Benchmarks» (2022).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →