Intel Sandy Bridge. Микроархитектура
Обзор микроархитектуры процессоров Intel Sandy Bridge (обновлено)
Входной блок
Снова вернемся к процессорам микроархитектуры Nehalem — входной блок конвейера имел четыре последовательных этапа обработки данных:
Несмотря на значительные улучшения в микроархитектуре Nehalem, остаются недостатки конвейерной организации работы процессора: ограниченная пропускная способность и существенная потеря производительности при ошибочном выборе предсказания переходов. Им и должны противостоять нововведения.
Во входном конвейере появился еще один модуль — кэш микроопераций (L0):
Прежде чем принять в обработку очередную инструкцию, устройство выборки проверяет наличие уже декодированной инструкции в кэше нулевого уровня. При наличии готового решения, декодирование инструкции отменяется, а результат считывается в кэше микроопераций.
Преимущества использования кэша микроопераций:
- До 80% микроопераций выбирается из кеша без перекомпиляции
- Декодированная инструкция используется многократно
- Увеличение скорости работы декодера
- Значительное сокращение энергопотребления входного блока
- Окно входного блока расширилось на 32 байта за такт
Наряду с новым кэшем микроопераций, полностью обновлен модуль предсказания условных переходов (Branch Prediction Unit). Предсказание ветвлений позволяет осуществлять предварительную выборку инструкций и данных из памяти, а также выполнять инструкции, находящиеся после условного перехода, до того, как он будет выполнен.
Большинство современных предсказателей переходов строят свои предсказания с использованием глобальной истории, содержащей результаты выполнения некоторого количества ранее встретившихся команд переходов. В традиционных схемах предсказания размер такой истории весьма ограничен, поскольку добавление к истории одного бита вызывает увеличение предсказателя в 2 раза. Использование комбинированных способов предсказания в купе с новыми способами ведения истории дают возможность существенно увеличить эффективность предсказаний без серьезных изменений размеров модуля, что и реализовано в Sandy Bridge.
Улучшения в новом модуле предсказания переходов:
- Уменьшение неверных предсказаний
- Удвоение числа конечных целей
- Более эффективная организация истории
- Более длинная история зависимостей поведения
Как видим, инженеры Intel нажимают на недостатки конвейерного блока и теоретически это очень даже получается.
Комментариев нет