JVM参数 -XX:SurvivorRatio 笔记

JVM参数 -XX:SurvivorRatio 笔记

1.JVM参数 -XX:SurvivorRatio 用于设置 新生代内存各区(End区域 和 Survivor区域【From幸存区 和To幸存区】)比值 ,JDK8默认值为-XX:survivorRatio=8

参考地址:https://www.oracle.com/java/technologies/javase/vmoptions-jsp.html

2.JVM参数 -XX:SurvivorRatio=8【End :S0:S1 = 8:1:1】,计算新生代各区内存公式

说明:【R:survivorRatio比例,Y:新生代空间大小】

End = (R * Y) /(R +1+1)

From = Y/(R+1+1)

To = Y/(R+1+1)

3.举例

设置新生代大小 -Xmn=1024M,则

End = (1024M * 8)/(8+1+1)=819.2M

Survivor= (1024M * 2)/(8+1+1)= 204.8M

4.新生成对象分配情况

新生成的对象被分配到End区,对象增多End空间不足时会触发MinorGC,GC后还存在存活对象,

存活对象则被复制到To Survivor区域,如果Survivor区空间不够(再进行一次GC或少次GC)后被移动到老年代中

5.设置-XX:SurvivorRatio=n 产生的影响

End区太小,容易被沾满,增加新生代的GC次数,频繁GC会降低整体JVM性能

End区太大,那么survivor区相应减小,失去了MinorGC的初衷

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值