Проблемы когерентности КЭШ- памяти в большой машине Курс «Основы БЭВМ» Автор: Галямова Е.В.

Презентация:



Advertisements
Похожие презентации
Организация памяти. Иерархии памяти Идея иерархической (многоуровневой) организации памяти заключается в использовании на одном компьютере нескольких.
Advertisements

Разработка кэша справочника для вычислительного комплекса на базе микропроцессора Эльбрус – 2S Студент : Петров Игорь, ФРТК, 613 группа Научный руководитель:
Сдала : Тимофеева А. П. Проверила : Французова Г. Н.
Управление памятью. Модели памяти Линейное адресное пространство Страничная организация Сегментная организация Комбинированное определение адреса Виртуальная.
Лекция 26 Лекция 26 Параллельное выполнение транзакций. Типы конфликтов. Захваты и блокировки.
Операционные системы Управление памятью Скрипов Сергей Александрович 2009.
Реализация справочника для аппаратной поддержки когерентности в ВК Эльбрус-2S Студент: Петров Игорь, ФРТК, 613 группа Научный руководитель: к.т.н. Груздов.
Учебный курс Архитектура ЭВМ и язык ассемблера Лекция 9 заместитель министра связи и массовых коммуникаций РФ, старший преподаватель Северов Дмитрий Станиславович.
Модели транзакций Журнализация и буферизация. Зачем нужна буферизация Если бы запись об изменении базы данных, которая должна поступить в журнал при выполнении.
Разработка коммутатора сообщений блока регистров и прерываний в кластере «Эльбрус-S» Выполнил: Петроченков М. В. 613 гр. Научный руководитель: Зайцев А.И.
Организация памяти. Иерархия памяти Общая идея иерархической (много- уровневой ) организации памяти заключает- ся в использовании на одном компьютере.
Лекция 6. Способы адресации в микропроцессорных системах.
Операционные системы Управление памятью Скрипов Сергей Александрович 2009.
Обзор архитектуры IA32/EM64T Юрий Долгов, Дмитрий Шкурко.
Архитектуры с параллелизмом на уровне команд. Два класса Суперскалярные процессоры Процессоры с длинным командным словом.
Лекция 4. Режимы работы микропроцессора. Взаимодействие микропроцессора с остальными устройствами Взаимодействие МП с остальными устройствами МПС происходит.
КЭШ КЭШ работает с физическими адресами Медленно, поскольку тратится время на преобразование адреса. При прерываниях или переключениях программ не требуется.
Электронная энциклопедия. Содержание Архитектура ПК Системы счисления.
Процессор – это блок, предназначенный для автоматического считывания команд программы, их расшифровки и выполнения.
Устройство памяти ПК. Виртуальная память. Кэш-память. Компьютерная память (устройство хранения информации, запоминающее устройство) часть вычислительной.
Транксрипт:

Проблемы когерентности КЭШ- памяти в большой машине Курс «Основы БЭВМ» Автор: Галямова Е.В.

Содержание лекции Кэширование разделяемых данных – проблема когерентности Методы решения проблемы Алгоритмы взаимодействия между основной и кэш-памятью Алгоритм MESI

Типовая архитектура мультипроцессорной системы с общей памятью L1 L2 MSC MBA STI P0P9 … P10P19…

Мультипроцессорная когерентность кэш-памяти

Когерентность кэш-памяти = согласованное состояние памяти Гарантия того, что любое считывание элемента данных возвращает последнее по времени записанное в этот элемент значение Два условия обеспечения когерентности Отдаленность операций записи и чтения во времени Сериализация операций

Протоколы когерентности кэш-памяти Существуют два класса таких протоколов: Протоколы на основе справочника (directory based). Информация о состоянии блока физической памяти содержится только в одном месте, называемом справочником (физически справочник может быть распределен по узлам системы). Протоколы наблюдения (snooping). Каждый кэш, который содержит копию данных некоторого блока физической памяти, имеет также соответствующую копию служебной информации о его состоянии. Централизованная система записей отсутствует.

Протоколы поддержания когерентности кэш Запись с аннулированием Запись с обновлением Write update protocol Write broadcast protocol

Запись с аннулированием Промах кэш-памяти вызывает выборку новой копии данных, поэтому процессор должен иметь достоверную (valid) копию данных в своем кэше

Запись с обновлением Промах кэш-памяти вызывает выборку новой копии данных процессор должен иметь достоверную (valid) копию данных в своем кэше

Протоколы поддержания когерентности кэш Запись с аннулированием Запись с обратным копированием Запись с обновлением Сквозная запись Write update protocol Write broadcast protocol

Реализация протокола: Использование механизма шины: Для выполнения операции процессор захватывает шину и транслирует по ней адрес Все процессоры непрерывно наблюдают за шиной Соответствующие адресу данные в кэше либо аннулируются, либо обновляются Доступ к шине строго регламентируется Строгая последовательность выполнения записей

Промах кэш-памяти Сквозная запись Последнее записанное значение может быть выбрано из основной памяти Запись с обратным копированием Каждый процессор наблюдает и контролирует адреса на шине

Стратегия управления кэш-памятью выбор метода отображения основной памяти в кэше; алгоритмы взаимодействия между медленной основной и быстрой кэш- памятью; выбор стратегии замещения информации в кэше.

Реализация процесса наблюдения за когерентностью кэш-памяти Бит модификации Modified/dirty bit Бит разделяемые или частных данных private/Exclusive bit Бит состояния Shared bit Бит достоверности valid/Invalid bit MESI

Каждая строка кэш-памяти ВМ может находиться в одном из следующих состояний: M E S I Состояние строки используется, –во-первых, для определения процессором ВМ возможности локального, без выхода на шину, доступа к данным в кэш-памяти, а, –во-вторых, - для управления механизмом когерентности

Для управления режимом работы механизма поддержки когерентности используется бит WT: состояние 1 которого задает режим сквозной (write-through) записи, а состояние 0 - режим обратной (write-back) записи в кэш- память Промах чтения в кэш-памяти заставляет вызвать строку из основной памяти и сопоставить ей состояние Е или S. Кэш-память заполняется только при промахах чтения. При промахе записи транзакция записи помещается в буфер и посылается в основную память при предоставлении шины.

Переходы состояний кэш памяти 1 Исходное состояние строки Состояние после чтенияСостояние после записи I Если WT=1, тогда Е, иначе S; Обновление строки путем ее чтения из основной памяти Сквозная запись в основную память; I SS Сквозная запись в основную память; Если WT=1 тогда Е, иначе S ЕЕМ МММ

Принудительный перевод строки в состояние I Исходное состояние INV=0INV=1 III SSI ЕSI М S; обратная запись строки I; обратная запись строки

Способы размещения блоков (строк) в кэш-памяти Способы размещения блоков (строк) основной памяти в кэш-памяти Кэш-память с прямым отображением Direct-mapped cache Частично (или множественно) ассоциативная кэш Set-associative cache Полностью ассоциативная кэш Fully associative cache

Сервер IBM z990 L1 – протокол со сквозной записью L2 – контроллер MSC для поддержания когерентности памяти всех узлов (MESI)