Photo
PUBLICATIONS

These works are copyright © ACM, Springer-Verlag, or IBM. Permission to make digital or hard copies of part of all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee.

PDF PS Online Java without the Coffee Breaks: A Non-intrusive Multiprocessor Garbage Collector

David F. Bacon, Clement R. Attanasio, Han B. Lee, V.T. Rajan, and Stephen E. Smith
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, Snowbird, Utah (June 2001), ACM SIGPLAN Notices, volume 36, number 5, May 2001, pp. 92-103. Presentation.

WhiteIcon

The Recycler is a concurrent multiprocessor garbage collector with extremely low pause times (maximum of 6 milliseconds over eight benchmarks) while remaining competitive with the best throughput-oriented collectors in end-to-end execution times. This paper describes the overall architecture of the Recycler, including its use of reference counting and concurrent cycle collection, and presents extensive measurements of the system comparing it to a parallel, stop-the-world mark-and-sweep collector.

PDF PS Online Concurrent Cycle Collection in Reference Counted Systems

David F. Bacon and V.T. Rajan
Proceedings of the Fifteenth European Conference on Object-Oriented Programming (University Eötvös Loránd, Budapest, Hungary, June 2001), J.L. Knudsen, ed., Lecture Notes in Computer Science vol. 2072, pp. 207-235.
Presentation at U.C. Berkeley, Feb. 6, 2001.

WhiteIcon

This paper describes in detail the concurrent cycle collection algorithm employed in the Recycler (see above). It includes both detailed pseudo-code and a proof of correctness. Measurements show that cycle collection can be highly effective for garbage collection, and often exhibits better locality properties than mark-and-sweep collectors.

PDF PS Online A Comparative Evaluation of Parallel Garbage Collectors

Clement R. Attanasio, David F. Bacon, A. Cocchi, and Stephen E. Smith
Proceedings of the Fourteenth Annual Workshop on Languages and Compilers for Parallel Computing, (Cumberland Falls, Kentucky, August 2001), H.G. Dietz, ed., Lecture Notes in Computer Science vol. 2624 (January 2003), pp. 177-192.
Presentation at University of Washington, June 5, 2001.

WhiteIcon

Describes a suite of garbage collectors we implemented in the IBM Jalapeño Java Virtual Machine, and quantitatively evaluates the relative performance of the different collectors. With large amounts of available memory, a generational semi-space copying collector performs best. But a hybrid collector that uses a copying semi-space for the young generation and a mark-and-sweep collector for the old generation can run at close to the same speed in half the memory of other collectors, thereby doubling the potential transaction throughput.


Submitted for Publication

PDF PS On-the-Fly Cycle Collection Revisited

Harel Paz, David F. Bacon, Elliot K. Kolodner, Erez Petrank, and V.T. Rajan

WhiteIcon

A number of improvements to the Recycler algorithm greatly reduce the load on the cycle collector and yield a corresponding increase in performance.

PDF PS A Pure Reference Counting Garbage Collector

David F. Bacon, Clement R. Attanasio, V.T. Rajan, Stephen E. Smith, and Han B. Lee

WhiteIcon

A journal-length paper on the Recycler, a pure reference-counting garbage collector that achieves both low pause times and high performance, while using a novel design based entirely on reference counting -- even for cycle collection. The collector is fully concurrent. This article combines and extends the PLDI and ECOOP papers previously published on the Recycler, with greater algorithmic detail and complete proofs of correctness.