Описаны структура и характеристики распределенного коммутатора общего кэша третьего уровня микропроцессора «Эльбрус‑4С+» – буферизующего двунаправленного кольца, соединяющего процессорные ядра с банками L3-кэша. Рассмотрены оптимизации, примененные для уменьшения времени доступа в кэш и числа конфликтов в кольце. Приведены результаты моделирования различных вариантов топологии коммутатора.
Постоянное усовершенствование технологических норм позволяет размещать всё большее количество транзисторов на одном кристалле микропроцессора при сохранении его площади. Благодаря этому увеличение числа процессорных ядер, размещенных в одном кристалле, остается актуальной тенденцией в наращивании вычислительной мощности современных микропроцессоров. Сегодняшние разработки крупнейших производителей микропроцессоров, таких как IBM, Intel, AMD, Fujitsu и Oracle, объединяют восемь и более вычислительных ядер в одном кристалле [1].
Для оптимизации работы процессорных ядер с общими данными и повышения производительности всей подсистемы памяти в состав большинства современных высокопроизводительных микропроцессоров включается общий кэш второго или третьего уровня, соединенный со всеми ядрами. С усовершенствованием технологических норм межблочные соединения оказывают все большее влияние на характеристики микропроцессора. Большая площадь кристалла и, соответственно, длина соединений, увеличение числа абонентов, требования к пропускной способности и времени доступа в кэш, ограничения на рассеиваемую мощность – делают задачу коммутации соединений между процессорными ядрами и общим кэшем одной из первостепенных при проектировании микропроцессора.
На практике используются два подхода к проблеме. Для микропроцессоров с количеством ядер, не большим четырех, обычно применяется централизованная коммутация (рис. 1а). Примером могут служить микропроцессоры Intel Nehalem [2]. Этому решению свойственна плохая масштабируемость при увеличении числа ядер. Если учитывать, что с целью увеличения пропускной способности кэш-памяти в ее состав вводятся несколько независимых банков, количество которых чаще всего равно числу процессорных ядер, то для N-ядерного микропроцессора требуется разработать коммутатор с N´N. соединениями. По этой причине для восьми- и 16-ядерных микропроцессоров использование централизованной коммутации ядер и банков общего кэша становится неоправданным из-за значительной задержки распространения сигналов по длинным связям и большой сложности трассировки.
Подробнее... Загрузить файл ![]()
Содержание:
Введение
1. Структурная схема и характеристики коммутатора
2. Оптимизации доступа в кэш
Очереди с двумя портами чтения
Широковещательные снуп-запросы и передача данных
Конвейерная передача данных и их адресов назначения
3. Результаты моделирования
Заключение
Литература