Concurrent, parallel garbage collection in linear time

Steven R. Brandt, Hari Krishnan, Gokarna Sharma, Costas Busch

Research output: Chapter in Book/Report/Conference proceedingConference contribution

4 Scopus citations

Abstract

This paper presents a new concurrent garbage collection algorithm based on two types of reference, strong and weak, to link the graph of objects. Strong references connect the roots to all the nodes in the graph but do not contain cycles.Weak references may, however, contain cycles. Advantages of this system include: (1) reduced processing, nontrivial garbage collection work is only required when the last strong reference is lost; (2) fewer memory traces to delete objects, a garbage cycle only needs to be traversed twice to be deleted; (3) fewer memory traces to retain objects, since the collector can often prove objects are reachable without fully tracing support cycles to which the objects belong; (4) concurrency, it can run in parallel with a live system without "stopping the world;" (5) parallel, because collection operations in different parts of the memory can proceed at the same time. Previous variants of this technique required exponential cleanup time [27, 31], but our algorithm is linear in total time, i.e. any changes in the graph take only O(N) time steps, where N is the number of edges in the affected subgraph (e.g. the subgraph whose strong support is affected by the operations).

Original languageEnglish (US)
Title of host publicationISMM 2014 - Proceedings of the 2014 ACM SIGPLAN International Symposium on Memory Management
PublisherAssociation for Computing Machinery
Pages47-58
Number of pages12
ISBN (Electronic)9781450329217
DOIs
StatePublished - Jun 12 2014
Externally publishedYes
Event2014 ACM SIGPLAN International Symposium on Memory Management, ISMM 2014 - Edinburgh, United Kingdom
Duration: Jun 12 2014 → …

Publication series

NameInternational Symposium on Memory Management, ISMM
Volume12-June-2014

Conference

Conference2014 ACM SIGPLAN International Symposium on Memory Management, ISMM 2014
CountryUnited Kingdom
CityEdinburgh
Period6/12/14 → …

Keywords

  • Compilers and runtime systems
  • Concurrent data structures
  • Garbage Collection
  • Parallel algorithms
  • Parallel programming theory and models
  • Software for productivity parallel programming

ASJC Scopus subject areas

  • Hardware and Architecture
  • Software

Fingerprint Dive into the research topics of 'Concurrent, parallel garbage collection in linear time'. Together they form a unique fingerprint.

Cite this