Technical Reports

PDF Staccato: A Parallel and Concurrent Real-time Compacting Garbage Collector for Multiprocessors

Bill McCloskey, David F. Bacon, Perry Cheng, David Grove
IBM Research Report RC24504, February 2008.

Staccato includes a parallel, concurrent, incremental defragmentation algorithm which requires no atomic operations by the mutator in the common case of object moves.

PDF A Pure Reference Counting Garbage Collector

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

A journal-length paper on the Recycler, a pure reference-counting garbagecollector 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.

PDF JaLA: A Java package for Linear Algebra

Presented at the Computer Science Division, University of California, Berkeley, October, 1998.
Unpublished, 1998.

JaLA comprises vector and array class libraries coupled with a modified Java-to-bytecode compiler that adds operator overloading to the source language. The result is a high-performance array package with a clean syntax.

Download Download Package.

PDF Proposal: High-Performance Locking for Java

David F. Bacon
Unpublished internal IBM document (declassified), 1997.

Description of the first thin lock implementation to be delivered, including C code for various lock operations and the x86 code for inlined fast paths.

PDF Implementing High-Performance Locking for Java

David F. Bacon, Ravi Konuru, and Chet Murthy
Unpublished internal IBM document (declassified), 1997.

Detailed evaluation of the first thin lock implementation in IBM's AIX JVM, with detailed performance studies of various uni- and multi-processor architectures.

PDF Featherweight Monitors with Bacon Bits

David F. Bacon
Unpublished, 1997. Presentation.

An earlier version of Thin Locks for Java, with a fully integrated mechanism for heavy-weight locks.

PDF Thesis Proposal: Optimization of Pointer-Intensive Programs

David F. Bacon
Unpublished, 1994. Presentation.

Automatic transformations on pointer-intsenive programs: multi-tail recursion elimination, pointer expansion, malloc strip-mining, and others.

No Softcopy Available Hermes: Unix User's Guide

Robert E. Strom, David F. Bacon, Arthur P. Goldberg, Andy Lowry, Bill Silvermann, Daniel Yellin, Jim Russell, and Shaula Yemini
Technical Report, IBM T.J. Watson Research Center, March 1992.

User's manual for the Hermes implementation for Unix running on the RS/6000, Sun-4, NeXT, IBM-RT/BSD 4.3 and includes a bytecode compiler, a bytecode to C compiler and an associated run-time system.