ACM Home Page
Please provide us with feedback. Feedback
Ulterior reference counting: fast garbage collection without a long wait
Full text PdfPdf (219 KB)
Source Conference on Object Oriented Programming Systems Languages and Applications archive
Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications table of contents
Anaheim, California, USA
SESSION: Garbage collection 2 table of contents
Pages: 344 - 358  
Year of Publication: 2003
ISBN:1-58113-712-5
Also published in ...
Authors
Stephen M. Blackburn  Australian National University, Canberra, Australia
Kathryn S. McKinley  University of Texas at Austin, Austin, TX
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 60,   Citation Count: 21
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/949305.949336
What is a DOI?

ABSTRACT

General purpose garbage collectors have yet to combine short pause times with high throughput. For example, generational collectors can achieve high throughput. They have modest average pause times, but occasionally collect the whole heap and consequently incur long pauses. At the other extreme, concurrent collectors, including reference counting, attain short pause times but with significant performance penalties. This paper introduces a new hybrid collector that combines copying generational collection for the young objects and reference counting the old objects to achieve both goals. It restricts copying and reference counting to the object demographics for which they perform well. Key to our algorithm is a generalization of deferred reference counting we call Ulterior Reference Counting. Ulterior reference counting safely ignores mutations to select heap objects. We compare a generational reference counting hybrid with pure reference counting, pure mark-sweep, and hybrid generational mark-sweep collectors. This new collector combines excellent throughput, matching a high performance generational mark-sweep hybrid, with low maximum pause times.


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, 14th International Workshop, LCPC 2001, Cumberland Falls, KY, USA, August 1-3, 2001, Lecture Notes in Computer Science. Springer-Verlag, 2001.
 
6
H. Azatchi and E. Petrank. Integrating generations with advanced reference counting garbage collectors. In International Conference on Compiler Construction, Warsaw, Poland, Apr. 2003. To Appear.
7
8
 
9
10
 
11
S. M. Blackburn, P. Cheng, and K. S. McKinley. A garbage collection bakeoff in a Java memory management toolkit (JMTk). Technical Report TR-CS-03-02, ANU, Mar. 2003.
12
 
13
S. M. Blackburn and K. S. McKinley. Fast garbage collection without a long wait. Technical Report TR-CS-02-06, Dept. of Computer Science, Austrailian National University, Nov. 2002.
14
15
16
17
18
19
 
20
 
21
 
22
D. Lea. A memory allocator. http://gee.cs.oswego.edu/dl/html/malloc.html, 1997.
23
24
 
25
E. Petrank. Private communication, July 2003.
26
 
27
Standard Performance Evaluation Corporation. SPECjvm98 Documentation, release 1.03 edition, March 1999.
 
28
Standard Performance Evaluation Corporation. SPECjbb2000 (Java Business Benchmark) Documentation, release 1.01 edition, 2001.
 
29
30
 
31

CITED BY  21

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