В чем разница между конфликтом и отсутствием обязательного кэша? - PullRequest
0 голосов
/ 15 декабря 2018

Я пытаюсь понять реальную разницу между конфликтом и принудительными промахами и нашел этот пример очень запутанным.

Рассмотрим двусторонний набор ассоциативного кэша с 256 блоками и использует замену LRU.Изначально кеш пуст.Пропуски конфликтов - это пропуски, возникающие из-за конкуренции нескольких блоков за один и тот же набор кеша.Обязательные промахи происходят из-за первого доступа к блоку.Следующая последовательность доступа к блокам памяти:

  {0,128,256,128,0,128,256,128,1,129,257,129,1,129,257,129}

повторяется 10 раз.Число пропущенных конфликтов в кеше составляет _________.

Если мы определим соответствующие виды промахов, мы получим общее число пропущенных конфликтов как 78 .Но в официальном ответе говорится 76 , поскольку предполагается, что первый доступ всегда является обязательным, даже если он конфликтует с некоторым блоком кэша.

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

1 Ответ

0 голосов
/ 15 декабря 2018

Если доступ first сопоставлен с набором, в котором заняты все пути и одна из существующих линий должна быть исключена, это не будет пропуском конфликта.Пропуск конфликта происходит, когда линия, к которой осуществляется доступ, была ранее выселена, потому что ассоциативность слишком мала, но общая емкость достаточно велика.

Обязательные пропуски происходят из-за первого разадоступ к блоку.

Я понимаю, что это определение из учебника обязательного промаха.В целом, однако, первый доступ к строке, которая отсутствует в кеше, не обязательно должен быть принудительным пропуском.Мисс может быть конфликтом или пропуском потенциала.Это может произойти, если кэш-память имеет аппаратную предварительную выборку (или если программные предварительные выборки не считаются обычным доступом).Модуль предварительной выборки мог получить строку, к которой ранее никогда не обращались, в кеш, но затем он был удален до того, как к нему обращались в первый раз.Позже, когда к нему действительно обращаются, происходит промах, и этот промах не будет обязательным промахом.Это различие важно, потому что количество принудительных пропусков является мерой успеха алгоритма предварительной выборки (вместе с количеством обращений к предварительно выбранной строке до ее выселения).Тем не менее, ваш учебник или учитель, вероятно, считает, что предварительная выборка выходит за рамки.

...