Skip to main content

Transactional Sapphire: Lessons in High Performance, On-the-fly Garbage Collection

Ugawa, Tomoharu, Ritson, Carl G., Jones, Richard E. (2018) Transactional Sapphire: Lessons in High Performance, On-the-fly Garbage Collection. Transactions on Programming Languages and Systems, 40 (4). 15:1-15:56. ISSN 0164-0925. E-ISSN 1558-4593. (doi:10.1145/3226225)

PDF - Author's Accepted Manuscript

Creative Commons Licence
This work is licensed under a Creative Commons Attribution 4.0 International License.
Download (867kB) Preview
[img]
Preview
PDF - Pre-print
Restricted to Repository staff only

Creative Commons Licence
This work is licensed under a Creative Commons Attribution 4.0 International License.
Contact us about this Publication Download (867kB)
[img]
Official URL
http://dx.doi.org/10.1145/3226225

Abstract

Constructing a high-performance garbage collector is hard. Constructing a fully concurrent 'on-the-fly', compacting collector is much more so. We describe our experience of implementing the Sapphire algorithm as

replicating collector. We fully evaluate, for the first time, and using realistic benchmarks, Sapphire's performance and suitability as a low latency collector. An important contribution of this work is a detailed description of our experience of building an on-the-fly copying collector for a complete JVM with some assurance that it is correct.

A key aspect of this is model checking of critical components of this complicated and highly concurrent system.

Item Type: Article
DOI/Identification number: 10.1145/3226225
Projects: Projects 0 not found.
Projects 0 not found.
[UNSPECIFIED] Information Processing Society of Japan
[UNSPECIFIED] Google Summer or Code
Uncontrolled keywords: Concurrent garbage collection, Replicating garbage collection, Parallel garbage collection, Transactional memory, Model checking, Reference objects, Java
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, > QA76.76 Computer software
Divisions: Faculties > Sciences > School of Computing > Programming Languages and Systems Group
Depositing User: Richard Jones
Date Deposited: 05 Jun 2018 21:10 UTC
Last Modified: 22 Jan 2020 15:28 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/67207 (The current URI for this page, for reference purposes)
Ugawa, Tomoharu: https://orcid.org/0000-0002-3849-8639
Jones, Richard E.: https://orcid.org/0000-0002-8159-0297
  • Depositors only (login required):

Downloads

Downloads per month over past year