什么决定缓存速度?

时间:2011-05-07 04:36:41

标签: file caching disk

我有一个从文件中读取并对其执行操作的程序(计算单词的频率)....我有4种不同的文件大小,我获得除最大值之外的所有缓存速度。为什么最大的文件只运行磁盘速度,无论我运行多少次? ram使用过多会限制缓存运行吗?大文件是27 GB。在Windows上运行。这是文件缓存,而不是CPU缓存

1 个答案:

答案 0 :(得分:1)

缓存==内存。内存不足,用完了缓存。如果你有一个大于缓存大小的文件,并且你正在通过它进行流式处理,就好像你几乎没有缓存一样。缓存仅在您再次读取数据时有帮助,它在第一次没有影响。

当文件大于内存时,当您尝试重新使用它时,内存中永远不会留下任何原始文件,因此在这种情况下缓存几乎没有任何价值。另一个黑暗的一面是,当你这样做时,你可能会丢失系统经常访问的所有其他小文件的缓存,并且不再缓存。因此,重新加载和恢复速度可能需要更长的时间。