大页面的性能下降

时间:2013-01-11 09:32:15

标签: linux memory-management jvm benchmarking huge-pages

我使用Java基准测试(SPECJbb),但观察到大页面(每页2M)启用时性能下降。我们的服务器基于NUMA arch,具有80个内核(启用HT时为160个逻辑cpu)和260G内存。

基准测试消耗大约200G内存,所以我在内核大页面池中分配了200G大。但性能下降6%~8%。我认为我应该有一些性能提升,因为这个基准测试使用了200G内存。

我的问题是,在什么情况下,使用大页面会降低性能? 我们的操作系统是RHEL6.3,我尝试了H otSpot JDK 1.6.381.6.37,这两个版本都发现了这种降级。感谢。

1 个答案:

答案 0 :(得分:1)

大页面通常可以带来高达5%的性能提升。

您应该检查是否正确分配了大页面:

  • 请参阅cat /proc/meminfo并检查实际的大页面分配大小
  • 你的堆有多大?你使用-XX:+UseLargePages选项了吗?看到JVM设法使用大页面,如果有任何问题,JVM输出日志中会出现警告

此外,LargePages + NUMA架构可能存在问题。每个核心有多少内存?参见: