如何清除内存磁盘缓存

如何清除内存磁盘缓存

Linux 使用空闲 RAM 来存储磁盘文件页面,以加快整体磁盘访问速度。

然而,出于基准测试的目的,我想测试磁盘读取速度,并且我不希望速度测量被已缓存在 RAM 中的磁盘文件数据所影响。有没有办法

A) 确保我创建的新文件不会存储在 RAM 中,或者

B) 清除 RAM 中的任何特定磁盘文件吗?

我还应该说我想避免使用 sudo。

答案1

A)对于读取速度来说sudo hdparm -tT --direct /dev/sda正是如此

二)echo 3 | sudo tee /proc/sys/vm/drop_caches

如果你想避免使用sudo,你可以使用这个:https://github.com/Feh/nocache

示例命令:

nocache time cat file > /dev/null

相关内容