我刚刚找到一个JVM配置,其中配置的大页面的大小远远大于为JVM分配的堆大小。
我在下面添加的配置是针对 Websphere Application Server 的,但是对于任何其他使用大页面的 Java 应用程序来说,问题都是一样的。通常,使用 -Xlp( IBM Knowledge Center-Tuning Linux 系统)开关为 IBM JRE 启用大页面,使用 -XX:+UseLargePages(Oracle:Java Support for Large Memory Pages)为 Oracle 启用大页面
当前配置显示
vm.nr_hugepages = 4096
Hugepagesize: 2048 kB (from meminfo)
-Xmx 6144 (for java process)
JVM 从启用 -Xlp 开始。
我会假设 vm.nr_hugepages 8GB 被固定,因此其他进程无法使用。但是 Java 只会为 Heap 申请 6GB。
谁能解释一下其他2GB会发生什么?
提前致谢!