真的找不到太多关于此的信息..希望有人可以提供帮助。我正在假脱机使用 100GB java 堆作为大数据缓存。为了避免与文件系统缓存等内容发生冲突,并且因为它通常性能更好,我将其分配在大页面中。
我保留了 51,200 x 2MB 大页面,一切都启动得很好。然而,当我终止进程并重新启动时,Linux 似乎将其中一些页面保留为“rsvd”。
# less /proc/meminfo | grep Hug
AnonHugePages: 0 kB
HugePages_Total: 52000
HugePages_Free: 50952
HugePages_Rsvd: 1634
HugePages_Surp: 0
Hugepagesize: 2048 kB
据我所知,系统上没有任何其他配置来请求或保留这些页面。 Linux 是否为我提供了一种方法来查看保留这些保留的内容和/或使该保留无效?
从我在 google 上找到的一切来看,它们实际上并没有被使用,只是 Linux 保留了它们,尽管有趣的是,在重新启动我的巨大 JVM 时不允许我使用它们。
任何帮助都会很棒。
您很可能让 Java 重新使用仍在内存中的对象,但是,运行以下命令将删除该对象以及还存储且未使用的其他所有对象
echo 3 | sudo tee /proc/sys/vm/drop_caches
但你实际上并不需要这样做——尽管它被“拿走了”,但事实并非如此。一旦有任何东西真正需要 ram linux 就会把它还给
欲了解更多信息,请查看http://www.linuxatemyram.com/ http://www.linuxatemyram.com/
您实际上不需要做任何正常的事情。您真正需要担心的唯一内存是应用程序运行时的内存
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)