默认JVM参数对于运行大型应用程序不是最佳的。在实际应用中进行过调整的人员的任何见解都将有所帮助。我们正在32位Windows计算机上运行该应用程序,默认情况下使用该客户端JVM 。我们添加了-server并将NewRatio更改为1:3(更大的年轻一代)。
您是否尝试过其他有用的其他参数/调整?
[更新]我正在谈论的应用程序的特定类型是很少关闭的服务器应用程序,至少需要-Xmx1024m。还假定该应用程序已被概要分析。我只在寻找有关 JVM性能的 一般准则。
周围有大量的信息。
首先,在调整JVM之前分析代码。
其次,仔细阅读JVM文档;周围有很多“城市传说”。例如,-server标志仅在JVM保持驻留并运行一段时间时才有用。-server“启动” JIT / HotSpot,并且需要通过同一路径进行多次传递才能启动。另一方面,由于存在更多的设置时间,因此-server 会减慢 JVM的初始执行 速度 。
周围有几本好书和网站。参见例如http://www.javaperformancetuning.com/