У меня есть тест чтения, и между последовательными запусками я должен убедиться, что данные не хранятся в памяти, чтобы избежать эффектов, наблюдаемых из-за кэширования. Пока что я использовал: запустить программу, которая записывает большой файл между последовательными запусками теста чтения. Что-то вроде
./read_benchmark
./write --size 64G --path /tmp/test.out
./read_benchmark
Программа записи просто записывает в файл массив размером 1G 64 раза. Поскольку размер основной памяти составляет 64 ГБ, я пишу файл, который составляет ок. такой же размер. Проблема в том, что запись занимает много времени, и мне было интересно, есть ли более эффективные способы сделать это, то есть избежать эффектов, наблюдаемых при кэшировании данных.
Кроме того, что произойдет, если я запишу данные в / dev / null?
./write --size 64G --path /dev/null
Таким образом, программа записи завершается очень быстро, фактически ввод-вывод не выполняется, но я не уверен, что она перезаписывает 64 ГБ основной памяти, чего я в конечном итоге и хочу.
Ваш вклад очень важен.