Mark without much Sweep Algorithm for Garbage Collection

被引:0
作者
Basch, Danko [1 ]
Ivancic, Dorian [2 ]
Hlupic, Nikica [3 ]
机构
[1] Univ Zagreb, Fac Elect Engn & Comp, Dept Control & Comp Engn, HR-10000 Zagreb, Croatia
[2] Croatia Osiguranje Dd, HR-10000 Zagreb, Croatia
[3] Univ Zagreb, Fac Elect Engn & Comp, Dept Appl Comp, HR-10000 Zagreb, Croatia
关键词
Mark-sweep; Garbage collection; Heap sizing; Memory management;
D O I
10.7305/automatika.2014.11.857
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
In this paper two simple improvements over traditional mark-sweep collector are proposed. The core idea is placing small objects of the same type in buckets. The buckets are organised in such way to eliminate the internal fragmentation, sweeping, and freeing inside them. The measured improvement of garbage collection time over traditional mark-sweep is 19%. Another proposed improvement is more general and is applicable to other garbage collection algorithms as well. It uses heuristics to control the heap growth. The regularities in behaviour of objects of particular types are used to determine whether the collection should be performed or avoided in favour of immediate heap expansion. The heap expansion algorithm reduces garbage collection time over traditional mark-sweep for 49% while keeping the heap size approximately the same.
引用
收藏
页码:514 / 525
页数:12
相关论文
共 27 条
[1]  
[Anonymous], 2012, The Garbage Collection Handbook
[2]  
[Anonymous], 2010, IA-32 and IA-64 Instruction Set Architectures.
[3]  
Basch D., 2005, International Journal of Simulation: Systems, Science & Technology, V6, P26
[4]   Immix: A mark-region garbage collector with space efficiency, fast collection, and mutator performance [J].
Blackburn, Stephen M. ;
McKinley, Kathryn S. .
ACM SIGPLAN NOTICES, 2008, 43 (06) :22-32
[5]   The DaCapo benchmarks: Java']Java benchmarking development and analysis [J].
Blackburn, Stephen M. ;
Garner, Robin ;
Hoffmann, Chris ;
Khan, Asjad M. ;
McKinley, Kathryn S. ;
Bentzur, Rotem ;
Diwan, Amer ;
Feinberg, Daniel ;
Frampton, Daniel ;
Guyer, Samuel Z. ;
Hirzel, Martin ;
Hosking, Antony ;
Jump, Maria ;
Lee, Han ;
Moss, J. Eliot B. ;
Phansalkar, Aashish ;
Stefanovic, Darko ;
VanDrunen, Thomas ;
von Dincklage, Daniel ;
Wiedermann, Ben .
ACM SIGPLAN NOTICES, 2006, 41 (10) :169-190
[6]  
Boehm H.-J., CONSERVATIVE GC ALGO
[7]  
Brecht T., 2001, C OBJ OR PROGR SYST, P353
[8]   Data flow analysis for software prefetching linked data structures in Java']Java [J].
Cahoon, B ;
McKinley, KS .
2001 INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES, PROCEEDINGS, 2001, :280-291
[9]  
Chung Y. C., 2000, Conference Record of POPL'00: 27th ACM SIGPLAN-SIGACT. Symposium on Principles of Programming Languages. Papers Presented at the Symposium, P378, DOI 10.1145/325694.325744
[10]  
Colnet D., 1998, ISMM, P154, DOI DOI 10.1145/286860.286877