ACM Home Page
Please provide us with feedback. Feedback
Myths and realities: the performance impact of garbage collection
Full text PdfPdf (305 KB)
Source Joint International Conference on Measurement and Modeling of Computer Systems archive
Proceedings of the joint international conference on Measurement and modeling of computer systems table of contents
New York, NY, USA
SESSION: Systems table of contents
Pages: 25 - 36  
Year of Publication: 2004
ISBN:1-58113-873-3
Also published in ...
Authors
Stephen M. Blackburn  Australian National University, Canberra, Australia
Perry Cheng  IBM T.J. Watson Research Center, Yorktown Heights, NY
Kathryn S. McKinley  University of Texas at Austin, Austin, TX
Sponsors
SIGMETRICS: ACM Special Interest Group on Measurement and Evaluation
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 16,   Downloads (12 Months): 126,   Citation Count: 28
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues   peer to peer  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1005686.1005693
What is a DOI?

ABSTRACT

This paper explores and quantifies garbage collection behavior for three whole heap collectors and generational counterparts: copying semi-space, mark-sweep, and reference counting, the canonical algorithms from which essentially all other collection algorithms are derived. Efficient implementations in MMTk, a Java memory management toolkit, in IBM's Jikes RVM share all common mechanisms to provide a clean experimental platform. Instrumentation separates collector and program behavior, and performance counters measure timing and memory behavior on three architectures.Our experimental design reveals key algorithmic features and how they match program characteristics to explain the direct and indirect costs of garbage collection as a function of heap size on the SPEC JVM benchmarks. For example, we find that the contiguous allocation of copying collectors attains significant locality benefits over free-list allocators. The reduced collection costs of the generational algorithms together with the locality benefit of contiguous allocation motivates a copying nursery for newly allocated objects. These benefits dominate the overheads of generational collectors compared with non-generational and no collection, disputing the myth that "no garbage collection is good garbage collection." Performance is less sensitive to the mature space collection algorithm in our benchmarks. However the locality and pointer mutation characteristics for a given program occasionally prefer copying or mark-sweep. This study is unique in its breadth of garbage collection algorithms and its depth of analysis.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
 
3
4
 
5
C. R. Attanasio, D. F. Bacon, A. Cocchi, and S. Smith. A comparative evaluation of parallel garbage collectors. In Languages and Compilers for Parallel Computing, Lecture Notes in Computer Science. Springer-Verlag, 2001.
 
6
 
7
8
9
10
11
 
12
S. M. Blackburn, P. Cheng, and K. S. McKinley. Myths and realities: The performance impact of garbage collection. Technical Report TR-CS-04-04, Dept. of Computer Science, Australian National University, 2004.
 
13
S. M. Blackburn, P. Cheng, and K. S. McKinley. Oil and water? High performance garbage collection in Java with JMTk. In ICSE, Scotland, UK, May 2004.
14
15
16
17
18
19
20
 
21
22
 
23
24
25
26
27
28
 
29
A. L. Hosking and R. L. Hudson. Remembered sets can also play cards, Oct. 1993. Position paper for OOPSLA '93 Workshop on Memory Management and Garbage Collection.
 
30
31
32
 
33
D. Lea. A memory allocator. http://gee.cs.oswego.edu/dl/html/malloc.html, 1997.
34
35
 
36
M. Pettersson. Linux Intel/x86 performance counters, 2003. http://user.it.uu.se/ mikpe/linux/perfctr/.
37
 
38
Standard Performance Evaluation Corporation. SPECjvm98 Documentation, release 1.03 edition, March 1999.
 
39
Standard Performance Evaluation Corporation. SPECjbb2000 (Java Business Benchmark) Documentation, release 1.01 edition, 2001.
40
 
41
42
 
43

CITED BY  28
 
 
 
 
 


REVIEW

"Peter C. Patton : Reviewer"

This is a fascinating paper on garbage collection, a subject in which strong opinions are common, but experiential wisdom is rare. The software engineering advantages of garbage collection over programmer directed memory management are generally a  more...

Collaborative Colleagues:
Stephen M. Blackburn: colleagues
Perry Cheng: colleagues
Kathryn S. McKinley: colleagues

Peer to Peer - Readers of this Article have also read: