|
Новосибирский государственный университет
|
|
Протоколы наблюдения
В протоколах наблюдения (snoopy protocols или просто snooping) ответственность за поддержание когерентности всех кэшей многопроцессорной системы возлагается на контроллеры кэшей.
В системах, где реализованы протоколы наблюдения, контроллер каждой локальной кэш-памяти содержит блок слежения за шиной, который следит за всеми транзакциями на общей шине и, в частности, контролирует все операции записи. Процессоры должны широковещательно передавать на шину любые запросы на доступ к памяти, потенциально способные изменить состояние когерентности совместно используемых блоков данных. Локальный контроллер кэш-памяти каждого процессора затем определяет, присутствует ли в его кэш-памяти копия модифицируемого блока, и если это так, то такой блок аннулируется или обновляется.
Протоколы наблюдения характерны для мультипроцессорных систем на базе шины, поскольку общая шина достаточно просто обеспечивает как наблюдение, так и широковещательную передачу сообщений. Однако здесь необходимо принимать меры, чтобы повышенная нагрузка на шину, связанная с наблюдением и трансляцией сообщений, не «съела» преимуществ локальных кэшей.
Некоторые из наиболее распространенных протоколов наблюдения:
- Протокол сквозной записи.
- Протокол обратной записи.
- Протокол однократной записи.
- Протокол Synapse.
- Протокол Berkeley.
- Протокол Illinois.
- Протокол Firefly.
- Протокол Dragon.
- Протокол MESI.
В большинстве протоколов стратегия обеспечения когерентности кэш-памяти расценивается как смена состояний в конечном автомате. При таком подходе предполагается, что любой блок в локальной кэш-памяти может находиться в одном из фиксированных состояний. Обычно число таких состояний не превышает четырех, поэтому в теге каждого блока кэш-памяти имеются два бита, называемые битами состояния (SB, Status Bit). Следует также учитывать, что некоторым идентичным по смыслу состояниям блока кэш-памяти разработчиками различных протоколов присвоены разные наименования. Например, состояние блока, в котором были произведены локальные изменения, в одних протоколах называют Dirty («грязный»), а в других - Modified («модифицированный» или «измененный»).
Литература- Цилькер Б.Я. Организация ЭВМ и систем: учебник для вузов / С.А. Орлов, Б.Я. Цилькер. - СПб.: Питер, 2011. - 688 с.
Ключевые термины, связанные с термином "протоколы наблюдения":
- Аппаратные способы решения проблемы когерентности
- Симметричные мультипроцессорные системы
Ключевые термины: когерентность кэш-памяти; аппаратные способы решения проблемы когерентности;
|А.М.Федотов|
|Преподавание|
|Современные проблемы
информатики|
|Информатика|
|Ключевые термины|
|Персоны|
© 2007-2024, Новосибирский государственный университет, Новосибирск
© 1998-2024, Институт вычислительных технологий СО РАН, Новосибирск
© 1998-2024, Федотов А.М.
Дата последней модификации:
16.08.2013