真的找不到太多关于这个..希望有人可以提供帮助。我正在后台处理一个 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 是否为我提供了一种方法来查看是什么保留了这些保留和/或使该保留无效?
从我发现谷歌的所有内容来看,它们实际上并没有被使用,只是 Linux 将它们保留起来,但有趣的是,在重新启动我的巨大 JVM 时不允许我使用它们。
任何帮助都会很棒。