Отключить кэш памяти - реальная причина

Хорошо, прежде чем вы пометите мою ветку как дубликат, я хочу сказать, что я знаю очень хороший ответ: Как очистить или отключить кэш памяти?
Но это не случай для меня.

Я провожу некоторые тесты производительности между приложением в памяти и приложением, использующим диск. Поэтому я хочу иметь гарантию, что каждый раз, когда приложение пытается извлечь что-то с диска, система действительно получает это с диска, а не из кеша памяти. (Я хочу, чтобы коэффициент производительности зависел от того, насколько хуже работает приложение, когда оно должно читать с диска.)
Я знаю, что могу очищать кэш командой sync && echo 3 > /proc/sys/vm/drop_caches, но каждую минуту очищать с помощью cron. это замедлить для меня, потому что кеш снова заполняется очень быстро.

У меня вопрос: неужели вы не можете отключить эту функцию? Или может обойти это? Это действительно может испортить результаты моих тестов.

PS: я использую Ubuntu 12.04 64-bit.

3
задан 13 April 2017 в 15:24

1 ответ

Можно отключить его с hdparm, открыть текстовый редактор и отредактировать/etc/hdparm.conf и не прокомментировать "write_cache = от" строки. Перезагрузка, чтобы проверить, работало ли это, вводит sudo hdparm-i/dev/sdX (используйте свою букву диска), и проверьте, что строка AdvancedPM, в конце говорит состояние кэша записи.

РЕДАКТИРОВАНИЕ: можно ли проверить hdparm-i/dev/sdX, чтобы видеть, как write_cache опция перед изменением.

EDIT2: используйте -o sync при монтировании раздела, чтобы не писать кэш, я не знаю о части чтения.

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: