JVM性能调优-Parallel Scavenge收集器

简介:Parallel Scavenge收集器讲解
是什么
  • Parallel Scavenge 收集器是⼀个新⽣代收集器,它也是使⽤复制算法的收集器,⼜是并⾏的多线程收集器
  • 由于与吞吐量关系密切,Parallel Scavenge 收集器也经常称为“吞吐量优先”收集器
  • 吞吐量是什么?CPU⽤于运⾏⽤户代码的时间与CPU总时间的⽐值,99%时间执⾏⽤户线程,1%时间回收垃圾 ,这时候吞吐量就是99%
特点
  • Parallel Scavenge 收集器的特点是它的关注点与其他收集器不同,CMS 等收集器的关注点是尽可能地缩短垃圾收集时⽤户线程的停顿时间,⽽ Parallel Scavenge 收集器的⽬标则是达到个可控制的吞吐(Throughput)。所谓吞吐量就是 CPU ⽤于运⾏⽤户代码的时间与 CPU 总消耗时间的⽐值,即吞吐量=运⾏⽤户代码时间/(运⾏⽤户代码时间+垃圾收集时间),虚拟机总共运⾏了 100 分钟,其中垃圾收集花掉 1 分钟,那吞吐量就是 99% 停顿时间越短就越适合需要与⽤户交互的程序,良好的响应速度能提升⽤户体验,⽽⾼吞吐量则可以⾼效率地利⽤ CPU 时间,尽快完成程序的运算任务,主要适合在后台运算⽽不需要太多交互的任务。
  • 虚拟机会根据当前系统的运⾏情况收集性能监控信息,动态调整这些参数以提供最合适的停顿时间或者最⼤的吞吐量,这种调节⽅式称为 GC⾃适应调节策略
  • -XX:MaxGCPauseMillis参数GC停顿时间,500MB ——>300MB,这个参数配置太⼩的话会发⽣频繁GC
  • -XX:GCTimeRatio参数,99%
Serial old收集器,它是⼀个单线程收集器,使⽤"标记–整理"算法
Parallel old收集器Parallel Scavenge收集器的⽼年代版本,使⽤多线程+标记整理算法

你可能感兴趣的:(JVM性能调优,java,jvm)