Jump to content

Однократная запись (связность кэша)

В когерентности кэша литературе по протоколам Write-Once был первым определенным протоколом MESI . Он имеет оптимизацию выполнения сквозной записи при первой записи и обратной записи при всех последующих операциях записи, что снижает общий трафик шины при последовательных операциях записи в память компьютера . Впервые он был описан Джеймсом Р. Гудманом в (1983). [1] Протоколы согласованности кэша являются важной проблемой в симметричных многопроцессорных системах, где каждый процессор поддерживает кэш памяти.

В этом протоколе каждый блок локального кэша находится в одном из этих четырех состояний:

  • Неверно : этот блок имеет несвязную копию памяти.
  • Допустимо : этот блок имеет последовательную копию памяти. Данные могут быть доступны для общего доступа, но их содержимое не изменяется.
  • Зарезервировано : блок является единственной копией памяти, но он по-прежнему связен. В случае замены блока обратная запись не требуется.
  • Грязный : блок является единственной копией памяти и является бессвязным. Этот экземпляр был написан один или несколько раз. Это единственное состояние, которое генерирует обратную запись при замене блока в кэше.

Эти состояния имеют точно такое же значение, как и четыре состояния протокола MESI (они просто перечислены в обратном порядке), но это упрощенная форма, позволяющая избежать операции чтения для владения. Вместо этого вся аннулирование выполняется путем записи в основную память.

Для любой пары кэшей разрешенные состояния данной строки кэша следующие (сокращенно в порядке, указанном выше):

я  V  Р Д 
я  Зеленая галочкаИ Зеленая галочкаИ Зеленая галочкаИ Зеленая галочкаИ
 V  Зеленая галочкаИ Зеленая галочкаИ Красный ХН Красный ХН
Р  Зеленая галочкаИ Красный ХН Красный ХН Красный ХН
Д  Зеленая галочкаИ Красный ХН Красный ХН Красный ХН

Переходы

[ редактировать ]

Протокол следует некоторым правилам перехода для каждого события:

Диаграмма перехода с однократной записью
Переход «WM» из состояния «Недействительный » ошибочен; запись должна быть записана в память, поэтому строка остается в зарезервированном состоянии.
  • Попадание чтения : информация предоставляется текущим кэшем. Никакого изменения состояния.
  • Промах чтения : данные считываются из основной памяти. Чтение отслеживается другими кэшами; если какая-либо из них имеет строку в состоянии «грязное» , чтение прерывается на время, достаточное для записи данных обратно в память, прежде чем ему будет разрешено продолжить. Любые копии в состояниях «Грязный» или «Зарезервировано» переводятся в состояние «Действительный» .
  • Попадание при записи : если информация в кэше находится в состоянии «Грязно» или «Зарезервировано» , строка кэша обновляется на месте, и ее состояние устанавливается на «Грязно» без обновления памяти. Если информация находится в состоянии «Действительно» , выполняется операция сквозной записи, обновляющая блок и память, и состояние блока меняется на « Зарезервировано» . Другие кэши отслеживают запись и присваивают своим копиям значение Invalid .
  • Промах записи : частичная запись строки кэша обрабатывается как промах чтения (если необходимо получить незаписанную часть строки кэша), за которым следует попадание записи. Это оставляет все остальные кэши в состоянии «Недействительно» , а текущий кэш — в состоянии « Зарезервировано» .

Это вариант протокола MESI, но в нем нет явной операции чтения для владения или широковещательной аннулирования, позволяющей перевести строку в кэш в эксклюзивном состоянии без выполнения записи в основную память. Вместо этого первая запись в строку действительного (также известного как Shared ) кэша выполняет запись в память, что неявно делает недействительными другие кэши. После этого строка находится в состоянии Reserved ( Exclusive ), и дальнейшие записи можно производить без обращения к основной памяти, оставляя строку кэша в состоянии Dirty ( Modified ).

  1. ^ Гудман, Джеймс Р. (1983). «Использование кэш-памяти для уменьшения трафика памяти процессора» . Новости компьютерной архитектуры ACM Sigarch . 11 (3): 124–131. дои : 10.1145/1067651.801647 .
  • Арчибальд, Дж.; Баер, Дж. Л. (ноябрь 1986 г.). «Протоколы когерентности кэша: оценка с использованием многопроцессорной имитационной модели». АКМ Транс. Вычислить. Сист . 4 (4): 273–298. дои : 10.1145/6513.6514 . S2CID   713808 .
  • Гудман, младший (1983). «Использование кэш-памяти для уменьшения трафика памяти процессора». Материалы 10-го ежегодного международного симпозиума по компьютерной архитектуре - ISCA '83 . Международный симпозиум по компьютерной архитектуре: Стокгольм, Швеция, 13–17 июня 1983 г., стр. 124–131. дои : 10.1145/800046.801647 . ISBN  0-89791-101-6 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c87e61deb263100cdf9753ca0acfb5f0__1691598360
URL1:https://arc.ask3.ru/arc/aa/c8/f0/c87e61deb263100cdf9753ca0acfb5f0.html
Заголовок, (Title) документа по адресу, URL1:
Write-once (cache coherence) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)