我使用了一个Java基准测试(SPECJbb),但是在启用大页面(每页2M)的情况下观察到一些性能下降。我们的服务器是基于NUMA arch的,有80个核心(当启用HT时有160个逻辑cpu )和260G内存。
基准测试消耗了大约200G内存,所以我在内核中分配了200G大的大页面pool.But,性能是6%~8%下降的。我想我应该会有一些性能提升,因为这个基准测试使用了200G的内存。
我的问题是,在什么情况下,使用大页面会降低性能?我们的操作系统是RHEL6.3,我试过HotSpot JDK 1.6.38和1.6.37,这两个版本我都发现性能下降了。谢谢。
发布于 2013-01-12 02:57:40
大页面通常会带来高达5%的性能提升。
您应该检查是否正确分配了较大的页面:
cat /proc/meminfo并检查实际的大页面分配大小-XX:+UseLargePages选项?查看JVM管理地使用了大页面,如果出现任何问题,JVM输出日志中将会出现警告。
此外,LargePages + NUMA架构也可能存在问题。每个内核有多少内存?请参见:
他们报告说,由于
,大页面性能下降了6-8%
https://stackoverflow.com/questions/14275170
复制相似问题