Java性能64位

Dan*_*Dan 9 java 64-bit jvm windows-server-2008

我最近搬到了Windows Server 2008 Enterprise上的64位操作系统.

在Windows 2003上,我的java程序似乎运行速度明显慢于32位.

真的会有任何反馈.

这是一个已知的问题?是否有特定设置来提高性能?

(我知道移动到64位会有很小的性能损失,但我看到了显着的性能损失).

Pet*_*rey 7

使用64位JVM,您可能会看到不同的性能,但是在不同的计算机上使用不同的操作系统会看到更多的差异.

如果要查看使用64位引用是否会降低速度,可以启用-XX:+UseCompressedOops这使得64位JVM使用32位引用但仍可以访问32 Gb内存.

另一种测试方法是在系统上使用32位JVM.;)

我们有一个对延迟敏感的系统,并且在64位JVM上使用32位引用时看到的性能优势很小,因为它将每个地址移位3位.32位JVM较小的寄存器集对我们的伤害超过它的帮助.

编辑:了解更多详情

http://wikis.sun.com/display/HotSpotInternals/CompressedOops

http://docs.oracle.com/javase/7/docs/technotes/guides/vm/performance-enhancements-7.html

http://blog.juma.me.uk/2008/10/14/32-bit-or-64-bit-jvm-how-about-a-hybrid/