![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM GC
zavakid
这个作者很懒,什么都没留下…
展开
-
J2SE 5.0的HotSpot JVM上的GC学习 - CMS GC
Concurrent mark sweep GC 很多应用对响应时间的要求要大于吞吐量。 YGC并不暂停多少时间,但FGC对时间的暂用还是很长的。特别是在年老区使用的空间较多时。 因此, HotSpot引入了一个叫做CMS的收集器,也叫低延时收集器。 CMS的YGC 与并行GC同样的方式: stop-the-world 加上 copy。 CMS的FGC CMS的FGC...2011-04-20 19:38:10 · 115 阅读 · 0 评论 -
GC特性以及各种GC的选择
垃圾回收器的特性 该回收的对象一定要回收,不该回收的对象一定不能回收 一定要有效,并且要快!尽可能少的暂停应用的运行 需要在时间,空间,回收频率这三个要素中平衡 内存碎片的问题(一种解决内存碎片的方法,就是压缩) 可扩展性和可伸缩性(内存的分配和回收,不应该成为跑在多核多线程应用上的瓶颈) 对垃圾回收器的选择 连续 VS. 并行 连续垃圾回收器,即使在多核的应用...2011-03-20 20:03:04 · 623 阅读 · 0 评论 -
JVM GC学习笔记
以下是在学习 http://www.oracle.com/technetwork/java/javase/memorymanagement-whitepaper-150215.pdf 之后所做的学习笔记。 请大家看后多拍砖,多交流 GC学习笔记,在下文中,GC即作为动词,又可作为名词:) GC特性以及各种GC的选择 GC性能指标 分代回收 J2SE 5...2011-03-20 20:10:42 · 88 阅读 · 0 评论 -
几个评估GC性能的指标
吞吐量 应用花在非GC上的时间百分比 GC负荷 与吞吐量相反,指应用花在GC上的时间百分比 暂停时间 应用花在GC stop-the-world 的时间 GC频率 顾名思义 Footprint 一些资源大小的测量,比如堆的大小 反应速度 从一个对象变成垃圾道这个对象被回收的时间 一个交互式的应用要求暂停时间越少...2011-03-24 19:25:50 · 683 阅读 · 0 评论 -
分代回收
什么是分代 当使用分代回收技术,内存会被分为几个代(generation)。也就是说,按照对象存活的年龄,把对象放到不同的代中。 使用最广泛的代,应属年轻代和年老代了。 根据各种GC算法的特征,可以相应的被应用到不同的代中。 研究发现: 大部分的对象在分配后不久,就不被引用了。也就是,他们在很早就挂了。 只有很少的对象熬过来了。 年轻代的GC相当的频繁,高效率并且快。因为年轻代...2011-03-27 11:21:01 · 110 阅读 · 0 评论 -
J2SE 5.0的HotSpot JVM上的GC学习 - 分代、GC类型、快速分配
HotSpot上的分代 分成三部分:年轻代、年老代、永久代 很多的对象一开始是分配在年轻代的,这些对象在熬过了一定次数的young gc之后,就进入了年老代。同时,一些比较大的对象,一开始就可能被直接分配到年老代中(因为年轻代比较小嘛)。 年轻代 年轻代也进行划分,划分成:一个Eden和两个survivor。如下图: 大部分的对象被直接分配到年轻代的eden区(...2011-04-02 14:02:03 · 100 阅读 · 0 评论 -
J2SE 5.0的HotSpot JVM上的GC学习 - SerialGC
串行GC 串行GC,只使用单个CPU,并且会stop the world。 young 的串行GC 如下图: 当发生ygc的时候,Eden和From的survivor区会将被引用的对象复制到To这个survivor种。 如果有些对象在To survivor放不下,则直接升级到年老区。 当YGC完成后,内存情况如下图: old区的串行GC 年老区和...2011-04-04 12:52:44 · 85 阅读 · 0 评论 -
J2SE 5.0的HotSpot JVM上的GC学习 - ParallelGC
并行GC 现在已经有很多java应用跑在多核的机器上了。 并行的GC,也称作吞吐量GC,这种GC把多个CPU都用上了,不让CPU再空转。 YGC的并行GC YGC的情况,还是使用stop-the-world + 复制算法的GC。 只不过是不再串行,而是充分利用多个CPU,减少GC负荷,增加吞吐量。 如下图,串行YGC和并行YGC的比较: 年老区的并行GC 也是和串行...2011-04-05 20:42:47 · 103 阅读 · 0 评论 -
J2SE 5.0的HotSpot JVM上的GC学习 - ParallelCompactingGC
Parallel Compacting GC parallelCompactingGC是在J2SE5.0 update6 引入的。 parallel compacting GC 与 parallel GC的不同地方,是在年老区的收集使用了一个新的算法。并且以后,parallel compacting GC 会取代 parallem GC的。 YGC的并行压缩GC 与并行GC使用的算...2011-04-06 23:17:26 · 154 阅读 · 0 评论