非服务器级计算机上的Xmx,Xms,MaxPermSize的默认值

时间:2011-11-21 09:06:44

标签: jvm jvm-arguments

非服务器级计算机上Java 6中的以下选项的默认值是什么?

  • -Xmx
  • -XX:MaxPermSize参数

Oracle的documentation声明:

  

在运行服务器VM的服务器级计算机上,垃圾收集器(GC)已从先前的串行收集器(-XX:+ UseSerialGC)更改为并行收集器(-XX:+ UseParallelGC)。

  

在运行具有并行垃圾收集器(-XX:+ UseParallelGC)的VM(客户端或服务器)的服务器级计算机上,初始堆大小和最大堆大小已更改

该页面没有描述非服务器级机器的默认值,只是说,例如,初始堆大小是“合理的最小值”。查看java命令的the 'man page',针对-Xms提供以下内容:

  

默认值在运行时根据系统配置选择

1 个答案:

答案 0 :(得分:69)

Windows 7/32位上的JDK 1.6.0_29的默认值:

-Xmx256m
-XX:MaxPermSize=64m

也可以通过以下命令打印这些选项的值:

java -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version 2>&1

然后查找MaxHeapSize和MaxPermSize键并查看默认值。

uintx InitialHeapSize                          := 199947456       {product}
uintx MaxHeapSize                              := 268435456       {product}           
uintx MaxPermSize                               = 67108864        {pd product}        

Here是Ultimate HotSpot VM选项备忘单,其中包含JDK最后5个版本的默认值和说明(7,8,9,10和11)。