ГлавнаяБлогCPU, GPU, TPU, NPU, DPU, QPU: чем отличаются и когда что использовать
Алгоритмы

CPU, GPU, TPU, NPU, DPU, QPU: чем отличаются и когда что использовать

Разбираемся в типах процессоров: CPU, GPU, TPU, NPU, DPU, QPU. Узнайте, какой использовать для ваших задач и как избежать узких мест. Практические советы внутри!

Al
Редакция Algolitalgolit.ru
8 мин чтения31 августа 2026 г.

Почему существует так много видов процессоров?

Откройте характеристики ноутбука — вы найдете CPU, GPU, а если ноутбук современный, то и NPU. В облаке вам предложат GPU, TPU и сетевую карту, которая на самом деле целый компьютер. А где-то в лаборатории работает QPU. Все они заканчиваются на PU и все «вычисляют». Возникает вопрос: почему бы не сделать один универсальный процессор? Ответ: «вычисления» — это не одно действие. Разберемся, чем они отличаются и как выбрать правильный.

CPU — универсальный исполнитель

Центральный процессор (CPU) — это универсал. Он запускает операционную систему, обрабатывает API-запросы, выполняет условные операторы, работает с базами данных и даже с клиентом Slack, который потребляет 4 ГБ ОЗУ без причины. CPU создан для непредсказуемых задач: разветвленного кода, где следующая инструкция зависит от предыдущей, длинных цепочек зависимостей, которые нельзя распараллелить.

Чтобы справляться с этим, современные ядра CPU оснащены сложными механизмами: предсказанием ветвлений, внеочередным выполнением, многоуровневым кэшем. Это требует транзисторов и энергии, поэтому в CPU обычно несколько мощных ядер, а не тысячи простых.

Но когда задача становится однотипной — например, нужно выполнить одну операцию над миллионами значений, — CPU справляется плохо. Вы платите за аппаратуру, которая предсказывает ветвления, которых нет.

GPU — мастер параллельных вычислений

GPU (графический процессор) появился из рендеринга, где нужно обрабатывать миллионы пикселей одинаковыми операциями. Поэтому GPU сделали противоположный выбор: убрали сложную логику из ядер, добавили больше арифметических блоков и запускают тысячи потоков синхронно. Модель называется SIMT (одна инструкция, множество потоков).

Оказалось, что нейросети имеют ту же форму: прямой проход через трансформер — это огромные матричные умножения, миллионы независимых операций умножения и сложения. Это родной язык GPU. Так графические карты случайно стали основой всей индустрии ИИ — возможно, самая прибыльная случайность в истории железа.

TPU — специализация на тензорных операциях

Когда матричные умножения стали главной статьей расходов, следующим шагом стала разработка TPU (тензорного процессора) от Google. TPU сужает задачу: чип создан специально для тензорных и матричных операций, а передача данных оптимизирована под эти потоки. В первой статье о TPU прямо сказано: чип не умный, это большой систолический массив блоков умножения с накоплением без сложной логики управления. Он выигрывает в производительности на ватт именно потому, что отказывается от гибкости.

Это вся суть специализированного железа: чем уже предположение, тем больше выигрыш, когда оно выполняется, и тем больше провал, когда нет. Попробуйте скормить TPU ваш JSON-парсер — ничего хорошего не выйдет.

NPU — ИИ на вашем устройстве

Ваш телефон разблокируется по лицу, размывает фон на звонках, транскрибирует голосовые заметки. Это не должно требовать обращения к облаку — было бы медленно и затратно по батарее. NPU (нейропроцессор) — это небольшой ускоритель ИИ, встроенный в чип устройства. Apple называет его Neural Engine, Qualcomm и Intel тоже производят свои NPU. Каждый стикер «AI PC» на ноутбуке — это про NPU.

Разница между TPU и NPU не в математике, а в окружении: TPU работает в дата-центре, оптимизирован на пропускную способность на стойку; NPU — в вашем кармане, оптимизирован на операции на ватт и на то, чтобы не поджечь джинсы. Одни и те же уравнения, но разные ограничения — поэтому нужны разные чипы.

DPU — процессор для перемещения данных

Представьте облачный сервер, на котором работают десятки виртуальных машин. До выполнения вашего кода машина должна обработать сетевые пакеты, виртуальный коммутатор, группы безопасности, шифрование, виртуальные диски и все прерывания ввода-вывода. Раньше этим занимался CPU хоста, поэтому вы покупали 64-ядерный сервер, но значительная часть ядер не касалась пользовательских нагрузок. Индустрия называет это «налогом дата-центра».

DPU (процессор обработки данных) берет этот налог на себя. Это карта со своими ядрами CPU, сетевыми интерфейсами и аппаратными движками для сети, хранения и криптографии. Например, AWS Nitro — известный пример, позволяющий выдавать «голые» инстансы почти со всеми ядрами хоста. DPU не находится дальше по шкале универсальности, он на другой оси: его работа — перемещать данные, а не вычислять.

QPU — квантовый процессор

Все предыдущие процессоры — классические. QPU (квантовый процессор) использует кубиты, которые могут находиться в суперпозиции и запутываться. Квантовые алгоритмы исследуют пространство задач способами, недоступными классическим компьютерам. Важно понимать: QPU — не быстрый CPU, это другая модель вычислений. Большинство задач не получают квантового преимущества. Реальные области применения узкие: моделирование квантовых систем, некоторые задачи оптимизации и криптография (алгоритм Шора). IBM Quantum позволяет запускать схемы бесплатно, но сегодняшние машины шумные и маленькие, и исправление ошибок — главная проблема.

Как выбрать подходящий процессор

Не начинайте с аббревиатур. Начните с формы работы. Задайте вопросы:

  • Работа ветвистая и разнообразная? — CPU. Это большинство ПО, и это нормально.
  • Одна и та же операция над огромным массивом данных? — GPU.
  • Тензорная математика в масштабе дата-центра? — TPU.
  • Тензорная математика на батарейках? — NPU.
  • Узкое место — перемещение данных, а не вычисления? — DPU.
  • Есть известное преимущество квантового алгоритма? — QPU, возможно, но не сегодня.

Эти чипы — коллеги, а не конкуренты. Один запрос от вашего телефона к ИИ-функции может затронуть четыре из них: NPU решает, обработать локально; если нет, CPU формирует запрос, DPU в дата-центре завершает соединение, CPU сервера запускает логику приложения, а GPU или TPU выполняет инференс.

Ловушка Амдала

Ускоритель помогает только той части работы, которую он реально выполняет. Закон Амдала гласит: если 20% времени не ускоряется, то бесконечное ускорение остальных 80% даст максимум 5x. На практике неускоренные 20% — это загрузка данных, предобработка и копирование тензоров через шину PCIe. Поэтому многие истории «мы купили GPU и получили ускорение 1.3x» — GPU был в порядке, он голодал.

import time, torch

x = torch.randn(8192, 8192)

# CPU

t = time.perf_counter()
x @ x
print(f"cpu: {time.perf_counter() - t:.3f} s")

# GPU (данные уже на устройстве)
g = x.cuda()
torch.cuda.synchronize()
t = time.perf_counter()
g @ g
torch.cuda.synchronize()  # ядра асинхронны, измеряем честно
print(f"gpu (resident): {time.perf_counter() - t:.3f} s")

# GPU с копированием каждый раз (так часто пишут)
t = time.perf_counter()
(x.cuda() @ x.cuda()).cpu()
torch.cuda.synchronize()
print(f"gpu (+copies): {time.perf_counter() - t:.3f} s")

Среднее число — из маркетинговых материалов. Нижнее — то, что вы получите, если перемещаете данные через шину при каждом вызове. На большом матричном умножении передача может стоить дороже вычислений. Решение всегда одно: держите данные на устройстве и группируйте операции, чтобы поездка окупалась. Тот же урок на NPU: быстрейший путь — когда тензор не покидает общую память ускорителя. На DPU: смысл в том, чтобы пакеты не прыгали через память хоста.

Что делать прямо сейчас

Проверьте, какое железо есть у вас:

lscpu | grep -E 'Model name|^CPU\(s\)|Flags' | cut -c1-120  # ядра + поддержка SIMD
nvidia-smi --query-gpu=name,memory.total --format=csv  # дискретный GPU
ls /dev/accel* /dev/dri/render* 2>/dev/null  # ускорители + рендер-узлы

На современном ноутбуке последняя строка часто показывает больше кремния, чем вы ожидали. Итак, запомните главный вопрос: «Какова форма этой работы?» Вместо заучивания аббревиатур. Это поможет выбрать правильный инструмент и избежать узких мест.

#процессоры#GPU#ускорители#архитектура
Al
Редакция Algolit

Пишем про алгоритмы, подготовку к собеседованиям и карьеру в IT — так, чтобы было понятно и полезно.

Хочешь закрепить знания на практике?

Решай задачи на Algolit — интерактивная платформа для обучения

Начать бесплатно →