摘要
为提高堆空间的利用率,许多垃圾收集器在标记扫描对象后加入"压缩"过程,主要有"标记-压缩"和"拷贝"两类垃圾收集器.垃圾收集时需要暂停程序的运行,为了减少这种时间开销,基于"拷贝"算法,垃圾收集器CCone在一次堆遍历中完成压缩过程和引用更新过程,而现有的算法至少需要两遍.此外,CCone基于"拷贝"算法充分利用多核和多线程技术,以页为单位,利用多线程启动多个垃圾收集器对堆空间进行垃圾回收.性能测试表明并行的CCone相比较传统的压缩垃圾收集器在吞吐量上有超过10%的提升,而由算法带来的开销可以忽略不计.
Compact processing is introduced by various garbage collectors in order to improve the usability of heap,such as "Mark Compact" and "Copying Compact". However,it is a high overhead to stop the world for collecting garbage. Our garbage collector -CCone enhances the copying compact algorithm by combining two heap passes to one pass,reducing time overhead. In addition,CCone utilizes the multi-threads technology allowing many garbage collectors to complete the collecting task simultaneously. The experimental results show that the improved algorithm is useful for performance improvement of most benchmarks:10% improvement in throughput,with little overhead.
出处
《小型微型计算机系统》
CSCD
北大核心
2010年第2期307-311,共5页
Journal of Chinese Computer Systems