Accession Number : ADA266831


Title :   Concurrent Garbage Collection of Persistent Heaps


Corporate Author : CARNEGIE-MELLON UNIV PITTSBURGH PA SCHOOL OF COMPUTER SCIENCE


Personal Author(s) : Nettles, Scott ; O'Toole, James ; Gifford, David


Full Text : https://apps.dtic.mil/dtic/tr/fulltext/u2/a266831.pdf


Report Date : Apr 1993


Pagination or Media Count : 24


Abstract : We describe the first concurrent compacting garbage collector for a persistent heap. Client threads read and write the heap in primary memory, and can independently commit or abort their write operations. When write operations are committed they are preserved in stable storage and thus survive system failures. Clients can freely access the heap during a garbage collection because a replica of the heap is created by the stable replica collector. A log is maintained to capture client write operations. This log is used to support both the transaction system and the replication-based garbage collection algorithm. Experimental data from our implementation was obtained from a transactional version of the SML/NJ compiler and modified versions of the TPC-B and 001 database benchmarks. The pause time latency results show that the prototype implementation provides significantly better latencies than stop-and-copy collection. For small transactions. throughput is limited by the logging bandwidth of the underlying log manager. The results provide strong evidence that the replication copying algorithm imposes less overhead on transaction commit operations than other algorithms.


Descriptors :   *COMPUTER PROGRAMMING , *COMPILERS , DATA BASES , ALGORITHMS , PROTOTYPES , THROUGHPUT , ACCUMULATORS , REPLICAS , COMPACTING , GARBAGE , COLLECTION , COMPUTER FILES , STORAGE , ACCESS , OPERATION , FAILURE , EXPERIMENTAL DATA


Subject Categories : Computer Programming and Software


Distribution Statement : APPROVED FOR PUBLIC RELEASE