我正在对运行在SPARC硬件上的Tomcat集群进行性能调优。32位JVM目前为我们提供了足够的内存,但我们将开始使用Terracotta进行服务器条带化,因此64位JVM提供的额外内存可能很快就会被需要。
除了更大的内存占用之外,迁移到SPARC上的64位JVM还会导致性能损失。此常见问题解答显示,SPARC上64位JVM 1.4版的性能损失为10% - 20%:
http://java.sun.com/docs/hotspot/HotSpotFAQ.html#64bit_performance
如果我能避免的话,我对10% - 20%的性能损失不感兴趣。已经讨论过使用32位/64位混合方法来避免这个问题,因此1.6 JVM可能没有1.4 JVM所具有的性能影响:
http://blog.juma.me.uk/2008/10/14/32-bit-or-64-bit-jvm-how-about-a-hybrid/
有没有人有从32位JVM迁移到SPARC上使用1.6版的64位JVM的当前性能指标?
谢谢。
院长
发布于 2009-06-18 16:44:59
以下是一些基于测试客户端使用64位和32位版本的JDK 1.6.0_13调用我们在Tomcat5.5上运行的web服务的结果。
在Tomcat5.5上使用默认设置时,64位JVM导致了大约7%的性能损失。当我将Tomcat参数acceptCount和maxThreads分别增加到1000时,64位JVM的性能影响不到1%。这可能是因为1000个线程对应于我在测试中使用的并发测试客户端的数量。
更改这些参数可以降低32位和64位JVM的运行时间,但64位JVM表现出更大的性能改进。
不过,您的里程可能会有所不同。
https://stackoverflow.com/questions/894326
复制相似问题