UseAdaptiveSizePolicy和其他jvm选项

时间:2010-09-03 09:24:18

标签: java jvm

JVM选项-XX:+ UseAdaptiveSizePolicy被定义为热点人体工程学的一部分,可以使用吞吐量或暂停时间优先级来指定。

但是,我的问题是 - 将NewSize和SurvivorRatio等其他jvm选项与之一起提及是否正确?这样做的确切影响是什么?

2 个答案:

答案 0 :(得分:15)

仅限FYI,-XX:+UseAdaptiveSizePolicy is enabled by default在任何最新版本的Sun JVM中。

另外,我找到了an article

  

避免麻烦-XX:SurvivorRatio=   选项与JVM不兼容   参数-XX:+UseAdaptiveSizePolicy。   请根据使用任何一个   你的情况。

我无法找到NewSize的明确答案,但它似乎设置了初始年轻代的大小,而不是永久性的,所以它与UseAdaptiveSizePolicy并不相互排斥

然而,这里有一堆文章:

但是,在大多数情况下,如果您正在调整SurvivorRatio,则需要调整NewSizeMaxNewSize

答案 1 :(得分:4)

我对非标准选项(-X)组合的体验是它们在JVM版本和平台之间的行为略有不同。

如果您想确定哪一个是一组选项的结果,请尽可能使用jmap -heap检查真实的JVM值,例如

Client compiler detected.
JVM version is 1.5.0_14-b03

using thread-local object allocation.
Mark Sweep Compact GC

Heap Configuration:
    MinHeapFreeRatio = 40
    MaxHeapFreeRatio = 70
    MaxHeapSize = 209715200 (200.0MB)
    NewSize = 2228224 (2.125MB)
    MaxNewSize = 4294901760 (4095.9375MB)
    OldSize = 1441792 (1.375MB)
    NewRatio = 8
    SurvivorRatio = 32
    PermSize = 8388608 (8.0MB)
    MaxPermSize = 134217728 (128.0MB)
[...]