что происходит с кешем и DRAM при выполнении «a = 5»? - PullRequest
0 голосов
/ 03 декабря 2018

Если процесс записывает непосредственный операнд по адресу

int a;
a = 5;

, что происходит с кэш-памятью L1 и DRAM?DRAM заполняет «5» в первую очередь или L1-Data Cache заполняет «5» в первую очередь?

1 Ответ

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

Компилятор назначает некоторый адрес памяти переменной a.Во втором операторе, когда выполняется = 5, если система является многопроцессорной системой, в нисходящем направлении будет отправлен запрос, чтобы сделать недействительными все строки и дать процессору, исполняющему код, этот конкретный адрес кэша в состоянии уникальной когерентности кэша.Значение 5 затем записывается в кэш L1 (при условии, что компилятор хочет сохранить адрес строки кэша в кэше и не считает, что это должно быть записано обратно в память / DRAM).

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