在Linux中为内存映射文件保留物理内存

时间:2014-02-07 10:42:06

标签: linux memory lucene mmap pmap

我正在使用Lucene的MMapDirectory将索引文件保存在内存映射文件中。根据pmap命令的输出,这些文件中只有一部分实际驻留在物理内存中。我想把更多的RAM放到服务器上,并确保所有文件完全在内存中。但是,额外的RAM将按比例分配。在Linux系统中,我是否可以专门为这些文件保留一些物理内存(总共大约5GB)。

提前感谢您的回答。

1 个答案:

答案 0 :(得分:0)

我担心目前没有任何体面的开箱即用解决方案。

您可以使用最接近您要查找的RAMDirectory,但效率不高(分配的RAM过多,GC缓慢等)。有LUCENE-3659来改善这一点,但还没有准备好。

您可以查看ramfs / tmpfs,但它们都是易失性的(关闭机器后索引会消失),最后也可能出现RAM gets cached in another RAM的情况。

更多信息: http://blog.thetaphi.de/2012/07/use-lucenes-mmapdirectory-on-64bit.html