CPUx

КАТАЛОГ

Разборы устройства.

Полные руководства, примеры и эксперименты.

Найти тему →
02 · Основы

Как процессор выполняет программу

Разберём маленькую программу, построим её зависимости и отличим время одной инструкции от потока результатов.

03 · Память

Кэш, память и локальность

Посчитаем обращения к учебным кэш-линиям и разберём, что действительно сравнивает обход массива с разным шагом.

04 · Исполнение

Условные переходы и предсказание

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

06 · Параллелизм

Ядра, потоки и предел ускорения

Рассчитаем предел для задачи фиксированного размера и разберём два разных источника потерь: общий замок и ложное разделение кэш-линии.

05 · Практика

Как измерять производительность

Соберём проверяемый тест обхода массива: одинаковые данные, разные маршруты, контрольная сумма и серия повторов.

07 · Практика

Частота, мощность и нагрев

Разделим частоту и скорость задачи, прочитаем доступную политику Linux и сравним короткую и длительную нагрузку без разгона.

01 · Основы

ISA и микроархитектура

Проследим простое сложение в RISC-V, отделим аппаратный контракт от ABI и проверим, что меняют параметры компиляции.