Выборка инструкций
Первый этап конвейера процессора: инструкции берутся из памяти (кэша инструкций) и подаются в остальной механизм; от скорости и точности фронтенда зависит потолок того, сколько работы способно выполнить ядро.
«Счётчик команд» указывает на следующую инструкцию, а блок выборки каждый такт читает блок инструкций из кэша инструкций L1 (I-cache). Поскольку современные ядра хотят выбирать много инструкций за такт и не могут ждать результата переходов, выборка тесно переплетена с предсказанием переходов (BTB/RSB), которое направляет следующую выборку, — фронтенд «бежит вперёд» и спекулятивно читает по предсказанному пути. Узкие места: промах I-cache останавливает всё ядро (нечего исполнять), а неверное предсказание перехода означает, что выбран не тот код и его придётся выбросить. Кэш микроопераций позволяет обойти выборку и декодирование для «горячего» кода. Ширина фронтенда (инструкций за такт) — фундаментальная характеристика микроархитектуры. См. также стадию декодирования и кэш микроопераций.