Принцип параллельного выполнения инструкций на современных CPU заключается в одновременном выполнении нескольких независимых команд, а не последовательно. n-eb.ru
Некоторые методы реализации параллелизма:
- Вычислительный конвейер. ru.wikipedia.org Обработка инструкций разделена на последовательность стадий, при этом модули процессора работают параллельно над разными инструкциями. ru.wikipedia.org Результаты работы каждой из стадий передаются через ячейки памяти на следующую стадию, и так — до тех пор, пока инструкция не будет выполнена. ru.wikipedia.org
- Суперскалярное выполнение операций. ru.ruwiki.ru Несколько функциональных блоков используются для выполнения нескольких команд одновременно. ru.ruwiki.ru
- Внеочередное исполнение. ru.ruwiki.ru Инструкции выполняются в любом порядке, который не нарушает зависимости данных. ru.ruwiki.ru
- Переименование регистров. ru.ruwiki.ru Метод используется для устранения ненужной сериализации (последовательного выполнения) операций, к которой приводит переиспользование регистров этими операциями. ru.ruwiki.ru
- Спекулятивное исполнение. ru.ruwiki.ru Позволяет выполнять инструкции целиком или частично до того, как станет ясно, нужно ли это выполнение. ru.ruwiki.ru
- Предсказание переходов. ru.ruwiki.ru cc.dvfu.ru Используется, чтобы избежать простаивания для разрешения управления зависимостями. ru.ruwiki.ru
Современные высокопроизводительные процессоры x86 (AMD Ryzen, Intel Core) работают на динамической последовательности параллельного выполнения (внеочередное исполнение команд). ru.ruwiki.ru