在CentOS中启用HugePage支持

我试图通过添加+ UseLargePages参数来调整JVM的性能。 由于它抛出错误,我认为这在我的操作系统中不受支持。 我正在使用CentOS(5.10) – Linux 2.6.16.33-xenU 64位发行版。 这是我运行下面的java命令时得到的。

java -Xmx400m -XX:+UseLargePages -version Java HotSpot(TM) 64-Bit Server VM warning: Failed to reserve shared memory (errno = 38). java version "1.7.0_51" Java(TM) SE Runtime Environment (build 1.7.0_51-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode) 

grep -i巨大/ proc / meminfo显示没有信息。 这就明确表示,HugePages支持不可用。 我安装了libhugetlbfs ,如果现在运行rpm -qi libhugetlbfs ,我得到如下的信息。

名称:libhugetlbfs重定位:(不可重定位)
版本:1.3供应商:CentOS
版本:8.2.el5版本date:2011年1月20日20:36:26
安装date:2014年3月7日星期五18:44:57build设主机:builder10.centos.org
组:系统环境/库源RPM:libhugetlbfs-1.3-8.2.el5.src.rpm
大小:111296驾照:LGPLv2 +
签名:DSA / SHA1,2011年3月21日星期一19:35:33,重要ID a8a447dce8562897
url: http : //libhugetlbfs.sourceforge.net
简介:用于访问巨大TLB文件系统的库
说明:
 libhugetlbfs库与Linux hugetlbfs交互以制作大页面
以透明的方式提供给应用程序。
名称:libhugetlbfs重定位:(不可重定位)
版本:1.3供应商:CentOS
版本:8.2.el5版本date:2011年1月20日20:42:35
安装date:2014年3月7日星期五18:44:57build设主机:builder10.centos.org
组:系统环境/库源RPM:libhugetlbfs-1.3-8.2.el5.src.rpm
大小:108116驾照:LGPLv2 +
签名:DSA / SHA1,星期一3月7日09:43:30,钥匙ID a8a447dce8562897
url: http : //libhugetlbfs.sourceforge.net
简介:用于访问巨大TLB文件系统的库
说明:
 libhugetlbfs库与Linux hugetlbfs交互以制作大页面
以透明的方式提供给应用程序。

HugePages支持仍然没有运气。

只是想知道如果我失去了一些东西,或者这个版本的Linux是不支持这个function的。

任何指针将不胜感激。

谢谢

要检查您的内核是否支持HugePage,请使用以下命令。 如果你得到这样的输出,你的内核支持HugePage。

 [root@prashant sa]# grep HUGETLB /boot/config-$(uname -r) CONFIG_HUGETLBFS=y CONFIG_HUGETLB_PAGE=y 

安装新的内核

 yum install kernel 

我知道这并不能解决你的问题,但是从2017年3月31日起,CentOS 5已经成为古老的生命了(即没有更新,也没有任何支持)。

你应该尽快迁移到CentOS 6或7。