`
dmy110
  • 浏览: 831 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

j2se 5.0 hotspot 垃圾回收器的自动选择/优化机制

 
阅读更多

以下内容自sun白皮书1-150020中找到,我自己的整理了一下。


j2se 5.0 hotspot 垃圾回收器的自动选择/优化机制可以分为两个部分,

第一:根据运行的环境选择是进行Serial GC还是Parallel GC,具体为:

2个以上的处理器;2G以上的内存空间。就被认为是服务器环境,默认运行Parallel GC,堆的初始参数为:初始大小为内存的1/64,最大1GB;最大值是内存的1/4,最大1GB。

否则认为是客户端环境,默认运行Serial GC,堆的初始参数为:初始大小为4MB;最大64MB。


第二:对于Parallel GC,通过自动调节堆大小等其他参数,来满足用户设定的特殊需求,具体为:

1.垃圾回收最大暂停时间:

命令为-XX:MaxGCPauseMillis=n。JVM会努力使得暂停时间小于n ms,比如不断减少堆的大小来减少暂停时间。有可能会降低JVM的整个运行效率。这个参数无初始值。

2.运行效率:

命令为-XX:GCTimeRatio=n。JVM会尽力使得垃圾回收的时间:整个运行时间<1/(1+n)。比如可能会增加堆的大小。默认值为1%。

当以上两个目标都达到的情况下,JVM会尽力减小堆的大小。

JVM会优先满足最大暂停时间的目标。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics