-Xms:初始堆大小或最小堆大小?
Posted
技术标签:
【中文标题】-Xms:初始堆大小或最小堆大小?【英文标题】:-Xms: Initial heap size or minimum heap size? 【发布时间】:2010-12-29 09:51:18 【问题描述】:-Xms
是指定初始堆大小还是最小堆大小?
我看到不同的观点。像second answer here 这样的一些人说它是用于初始堆,而另一些人则说它是最小堆大小。
还是说最小尺寸本身就是初始尺寸?
【问题讨论】:
【参考方案1】:初始堆大小是最小堆大小。它不会小于初始堆大小。
来自Tuning Garbage Collection with the 5.0 Java[tm] Virtual Machine:
默认情况下,虚拟机增长 或在每次收集时缩小堆 尽量保持免费的比例 每个地方都有住物体的空间 特定范围内的集合。 此目标范围设置为 参数百分比 -XX:MinHeapFreeRatio= 和 -XX:MaxHeapFreeRatio=,总大小由下限 -Xms 及以上 -Xmx 。
【讨论】:
默认情况下,我的机器占用 10 GB 的最大堆大小,因为我们有 40 GB 内存。当我设置 -Xms15g 时,最大尺寸是多少?【参考方案2】:从运行 java -X:
-Xms<size> set initial Java heap size
-Xmx<size> set maximum Java heap size
-Xss<size> set java thread stack size
请注意,不能保证 -X 选项在所有 VM 上都存在或在所有 VM 上的行为相同。例如 -Xms 可以根据 VM 格式化您的硬盘驱动器(它不会 - 但严格来说它可以 :-) (键入 java 本身会提供此行的帮助:“-X print help on non-standard options”) .
【讨论】:
以上是关于-Xms:初始堆大小或最小堆大小?的主要内容,如果未能解决你的问题,请参考以下文章