политика кеширования с обратной записью в многоуровневом кэше и пропускная способность между кешами разных уровней - PullRequest
0 голосов
/ 21 июня 2020

Когда мой профессор учил нас, как работает политика кеширования с обратной записью, примеры всегда были в одноядерной системе с одним уровнем кеширования, поэтому (с использованием политики обратной записи) он сказал нам, что при замене блока грязным битом == 1 блок необходимо скопировать в основную память. Но мой вопрос: в реальном случае многоуровневых кешей и многоядерной системы это правда? Я имею в виду, , если блок, который имеет грязный бит == 1, заменяется из моего кеша L1, он только копируется в основную память? или он копируется в верхний уровень кэша (сохраняется D == 1), но не копируется в память? Или оба из них (копируются на все верхние уровни кеша + копируются в основную память)? (в этом последнем случае я предполагаю, что , на верхних уровнях кеша блок копируется с D == 0, так как блок уже обновлен в основной памяти).

А также Хочу добавить вопрос: копия одного блока памяти из кеша одного уровня в кеш другого уровня (предположим, что блоки размером 64 байта) можно выполнить за один цикл (обычно в современных процессорах)? или нет такой широкой полосы пропускания, чтобы сделать это всего за один цикл?

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...