IBM JDK(J9)垃圾回收(GC)策略

来源:互联网 发布:linux 用户列表 编辑:程序博客网 时间:2024/05/18 16:18

在IBM JDK 1.5之后,采用了如下的垃圾回收GC策略:

针对吞吐量进行优化-Xgcpolicy:optthruput(可选)默认策略。对于吞吐量比短暂的 GC 停顿更重要的应用程序,通常使用这种策略。每当进行垃圾收集时,应用程序都会停顿。针对停顿时间进行优化-Xgcpolicy:optavgpause通过并发地执行一部分垃圾收集,在高吞吐量和短 GC 停顿之间进行折中。应用程序停顿的时间更短。分代并发-Xgcpolicy:gencon以不同方式处理短期存活的对象和长期存活的对象。采用这种策略时,具有许多短期存活对象的应用程序会表现出更短的停顿时间,同时仍然产生很好的吞吐量。子池-Xgcpolicy:subpool采用与默认策略相似的算法,但是采用一种比较适合多处理器计算机的分配策略。建议对于有 16 个或更多处理器的 SMP 计算机使用这种策略。这种策略只能在 IBM pSeries® 和 zSeries® 平台上使用。需要扩展到大型计算机上的应用程序可以从这种策略中受益。

optthruput 表示针对吞吐量进行优化,optavgpause 表示针对停顿时间进行优化,gencon 表示分代并发,subpool 表示子池。上表中也提到,默认的GC策略为optthruput.

实际使用过程中,我们发现,相对于optthruput来说,gencon的策略更加平衡时间和吞吐量的选择.



0 0
原创粉丝点击