sil*_*iot 6 filesystem performance cache
这个问题是对Optimizing EXT4 performance的重新表述。
我有一个包含构建文件的目录,大多数非常小,但总共 5.6G。
我通常一遍又一遍地访问相同的文件子集(几千个,几十兆字节)。子集每天都在变化(不同的项目,不同版本的库)。当我使用它时需要更长的时间似乎是磁盘搜索。例如,如果我du第二次执行两次,则所需时间与第一次相同,并且磁盘活动相似。
理想情况下,我想告诉内核将 X Mb 分配给元数据,将 Y 分配给文件夹中的数据,例如 nfs 缓存的选项。
除了从本地主机挂载 nfs 并将其缓存到 ramdisk 之外,是否有可能以某种方式实现?
小智 1
我相信您想要的是对您知道第二天需要的数据进行完整的 readahead() 和/或 posix_fadvise() 。
如果您不知道或者结果数据太大而无法缓存,那么您已经知道答案了。内核不会缓存所有内容,因为没有足够的内存。