• DocumentCode
    2536464
  • Title

    Fine-Grained Parallel Compacting Garbage Collection through Hardware-Supported Synchronization

  • Author

    Horvath, Oswin ; Meyer, Matthias

  • Author_Institution
    Inst. of Commun. Networks & Comput. Eng., Univ. Stuttgart, Stuttgart, Germany
  • fYear
    2010
  • fDate
    13-16 Sept. 2010
  • Firstpage
    118
  • Lastpage
    126
  • Abstract
    Parallel garbage collection seeks to exploit the inherent parallelism of graph tracing by evenly distributing the set of objects in the heap among all available processing resources. Any straightforward implementation, however, suffers from prohibitive overheads since each access to the worklist of objects and to the objects themselves needs to be protected by synchronization, especially so in the case of compacting collectors. For this reason, known parallel collectors sacrifice a great deal of work distribution granularity and scalability to keep the synchronization costs acceptable. In this paper, we present a case study of a different approach. Our parallel compacting collector is based on Cheney´s copying algorithm, employs a single worklist and distributes garbage collection work on an object-by-object basis. This way, it achieves well balanced work distribution and good scalability. To solve the synchronization problem, we introduce a low-cost multi-core garbage collection coprocessor and take advantage of hardware-supported synchronization. We built an FPGA-based prototype with a single-core main processor supported by a multi-core garbage collection coprocessor. Measurement results show that an 8-core garbage collection coprocessor decreases the duration of garbage collection cycles by a factor of up to 7.4, while a 16-core configuration still achieves a factor of up to 12.1.
  • Keywords
    field programmable gate arrays; multiprocessing systems; parallel processing; storage management; 8-core garbage collection coprocessor; Cheney copying algorithm; FPGA-based prototype; distribution granularity; fine-grained parallel compacting garbage collection; graph tracing; hardware-supported synchronization; multicore garbage collection coprocessor; parallel collectors; processing resources; synchronization costs; Coprocessors; Data structures; Heuristic algorithms; Memory management; Partitioning algorithms; Registers; Synchronization; Hardware Support; Object Based Processor Architectures; Parallel Garbage Collection; Synchronization;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing Workshops (ICPPW), 2010 39th International Conference on
  • Conference_Location
    San Diego, CA
  • ISSN
    1530-2016
  • Print_ISBN
    978-1-4244-7918-4
  • Electronic_ISBN
    1530-2016
  • Type

    conf

  • DOI
    10.1109/ICPPW.2010.28
  • Filename
    5599210