CPUxАРХИТЕКТУРА В ДЕТАЛЯХ

Основы · РЕДАКЦИОННЫЙ МАТЕРИАЛ

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

От инструкции до результата: регистры, декодирование и исполнение.

Программа — последовательность инструкций

Процессор выполняет машинные инструкции: читает данные, складывает числа, сравнивает значения и меняет порядок выполнения. Набор инструкций, или ISA, задаёт доступные операции и видимые программе регистры. Микроархитектура описывает, как конкретное ядро реализует этот набор. Поэтому два процессора одной архитектуры могут выполнять одинаковый код с разной скоростью.

Путь инструкции

Упрощённая схема: выборка из памяти, декодирование, чтение операндов, исполнение и фиксация результата. Современные ядра перекрывают эти стадии для нескольких инструкций. Это конвейер: он увеличивает поток выполненной работы, но не делает каждую отдельную операцию мгновенной.

Что ограничивает скорость

Зависимость между операциями не позволяет начать следующую, пока не готов предыдущий результат. Независимые операции иногда могут исполняться параллельно. Промах кэша, неверное предсказание перехода или нехватка исполнительных ресурсов могут задержать выполнение. Число ядер не устраняет зависимости внутри одного последовательного потока.

Практический маршрут

Сначала найдите участок, который занимает заметную часть времени программы. Затем сформулируйте гипотезу: ожидание данных, вычисления или синхронизация. Изменяйте один фактор и повторяйте измерение на одинаковом входе. Для точных деталей конкретной инструкции используйте руководство производителя, а не универсальную таблицу задержек.

Проверить по первоисточнику

Общий материал проверен по документации 26 октября 2026 года. Детали конкретного процессора уточняйте в его руководстве.

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