Вредить ОЗУ с помощью обратной записи (clflush) - PullRequest
0 голосов
/ 01 декабря 2018

Я написал этот код сборки x86 для MASM:

loop_start:
mov dword ptr [esp], 0
clflush dword ptr [esp]
mov dword ptr [esp], 0FFFFFFFFh
clflush dword ptr [esp]
jmp loop_start

Он записывает нули бесконечных циклов и единицы в один и тот же адрес в памяти.
В этом примере только верхняя частьстек.
Затем команда clflush форсирует обратную запись из cpu-cache в память.
Вопрос в том, повредит ли это день или около того, повредит ли это памяти во времени.
Потому чтоя знаю, что ОЗУ становятся ошибками во времени, и, например, диски ssd ограничены для записи.

1 Ответ

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

В отличие от Flash (используется в твердотельных накопителях), DRAM обладает практически неограниченной стойкостью записи.Он не будет «изнашиваться» от чтения / записи, если будет быстрее, чем просто сидеть при включенном питании.

BTW, movnti или movntps - более простой способ обхода хранилищ в кэш-памяти.Запишите чередующиеся пары строк кэша.

...