CPU
Central Processing Unit — центральный процессор, универсальное вычислительное устройство, исполняющее инструкции программ и управляющее остальным железом.
Что такое CPU
CPU (Central Processing Unit, центральный процессор, ЦП) — главное вычислительное устройство компьютера. Исполняет машинные инструкции, управляет памятью и координирует работу остального железа. Всё, что происходит на сервере, начинается с CPU: он загружает ОС, запускает процессы и раздаёт задачи ускорителям.
Универсальность — его определяющее свойство. CPU одинаково справится с ветвлениями, работой с базой, шифрованием и обработкой строк. Он не самый быстрый ни в одной конкретной задаче, зато не пасует ни перед одной.
Что такое ядро процессора
Ядро (core) — самостоятельный вычислительный блок внутри CPU со своими исполнительными устройствами и кешем. Сколько ядер — столько инструкций процессор выполняет физически одновременно.
Потоки (threads) — логические линии исполнения. Технология SMT (у Intel — Hyper-Threading) позволяет одному ядру обслуживать два потока, заполняя простои первого работой второго. Поэтому 8-ядерный процессор часто показывается системе как 16 логических.
Отсюда стандартная запись «8 ядер / 16 потоков». Второй поток не удваивает мощность — типичный выигрыш измеряется десятками процентов. Подробный разбор — в статье Ядра и потоки процессора.
Из чего состоит CPU
- Ядра — считают. Внутри: декодер инструкций, ALU, блоки предсказания переходов, внеочередное исполнение.
- Кеш L1/L2/L3 — сверхбыстрая память рядом с ядрами. L1 — десятки килобайт на ядро, L3 — десятки мегабайт на весь чип, общий. Кеш существует потому, что обращение в оперативную память для ядра — вечность.
- Контроллер памяти — связь с RAM, встроен прямо в процессор.
- Линии PCIe — к ним цепляются GPU и NVMe SSD. Их количество ограничено и определяет, сколько карт влезет в сервер.
- Векторные расширения — AVX, AVX-512, AMX: обработка нескольких чисел за одну инструкцию.
CPU и GPU: в чём разница
Оба считают, но спроектированы под противоположные задачи. CPU оптимизирован под задержку — как можно быстрее выполнить одну сложную цепочку операций. GPU оптимизирован под пропускную способность — выполнить миллион одинаковых простых операций за раз.
| CPU | GPU | |
|---|---|---|
| Расшифровка | Central Processing Unit | Graphics Processing Unit |
| Ядер | Единицы — десятки, сложные | Тысячи, простые |
| Что оптимизируют | Задержку одной цепочки | Общую пропускную способность |
| Ветвления в коде | Обрабатывает отлично | Резко теряет эффективность |
| Память | RAM, сотни ГБ, медленнее | VRAM, десятки ГБ, очень быстрая |
| Аналогия | Несколько профессоров | Стадион школьников с калькуляторами |
Аналогия рабочая: задачу «решить одно сложное уравнение» стадион не осилит — там нужен профессор. А «сложить миллион пар чисел» стадион сделает мгновенно, профессор будет сидеть до вечера. Матричное умножение внутри нейросети — это ровно второй случай, отсюда и роль GPU в ML.
В реальном ML-сервере они не конкурируют, а делят работу:
- CPU: загрузка и препроцессинг данных, токенизация, логика приложения, обслуживание HTTP-запросов.
- GPU: матричные умножения — собственно инференс и обучение.
Отсюда неочевидное следствие: слабый CPU способен уронить производительность дорогой GPU. Если процессор не успевает готовить батчи, ускоритель ждёт данных, и GPU utilization проваливается. Дисбаланс — частая причина «медленного» сервера, где GPU ни при чём.
Архитектуры
- x86-64 — Intel Xeon и AMD EPYC в серверах, Core и Ryzen в десктопах. Основа классической серверной инфраструктуры.
- ARM — AWS Graviton, Ampere Altra, Apple M-серия. Лучше по производительности на ватт, всё чаще встречается в облаке. NVIDIA Grace тоже ARM.
- RISC-V — открытая архитектура без лицензионных отчислений, пока в основном embedded.
Смена архитектуры — не бесплатная операция: бинарники и Docker-образы нужно собирать под целевую платформу.
Как посмотреть CPU на сервере
# Модель, ядра, потоки, кеш, флаги расширений
lscpu
# Загрузка по ядрам в реальном времени
htop
# Есть ли AVX-512
grep -o 'avx512[a-z]*' /proc/cpuinfo | sort -u
Связанные термины
- GPU — ускоритель параллельных вычислений, дополняющий CPU
- Ядра и потоки процессора — подробно про core, thread и vCPU
- DPU — процессор, снимающий с CPU инфраструктурные задачи
- FPGA — программируемая логика как альтернатива универсальному CPU
- PCIe — шина, связывающая CPU с ускорителями
- VPS — где ресурсы CPU продаются как vCPU
Готовы запустить GPU-задачу?
Запустить GPU-сервер