Myths and Realities: The Performance Impact of Garbage Collection

dc.contributor.authorBlackburn, Stephen
dc.contributor.authorCheng, Perry
dc.contributor.authorMcKinley, Kathryn
dc.coverage.spatialNew York USA
dc.date.accessioned2015-12-13T23:10:20Z
dc.date.available2015-12-13T23:10:20Z
dc.date.createdJune 12 2004
dc.date.issued2004
dc.date.updated2016-02-24T09:48:08Z
dc.description.abstractThis paper explores and quantifies garbage collection behavior for three whole heap collectors and generational counterparts: copying semi-space, mark-sweep, and reference counting, the canonical algorithms from which essentially all other collection algorithms are derived. Efficient implementations in MMTk, a Java memory management toolkit, in IBM's Jikes RVM share all common mechanisms to provide a clean experimental platform. Instrumentation separates collector and program behavior, and performance counters measure timing and memory behavior on three architectures. Our experimental design reveals key algorithmic features and how they match program characteristics to explain the direct and indirect costs of garbage collection as a function of heap size on the SPEC JVM benchmarks. For example, we find that the contiguous allocation of copying collectors attains significant locality benefits over free-list allocators. The reduced collection costs of the generational algorithms together with the locality benefit of contiguous allocation motivates a copying nursery for newly allocated objects. These benefits dominate the overheads of generational collectors compared with non-generational and no collection, disputing the myth that "no garbage collection is good garbage collection." Performance is less sensitive to the mature space collection algorithm in our benchmarks. However the locality and pointer mutation characteristics for a given program occasionally prefer copying or mark-sweep. This study is unique in its breadth of garbage collection algorithms and its depth of analysis.
dc.identifier.isbn1581138733
dc.identifier.urihttp://hdl.handle.net/1885/87414
dc.publisherAssociation for Computing Machinery Inc (ACM)
dc.relation.ispartofseriesJoint International Conference on Measurement and Modeling of Computer Systems 2004
dc.sourceJoint Internaional Conference on Measurement and Modeling of Computer Systems, Proceedings.
dc.source.urihttp://delivery.acm.org/10.1145/1010000/1005693/p25-blackburn.pdf?key1=1005693&key2=2004952111&coll=portal&dl=ACM&CFID=42095896&CFTOKEN=67463507
dc.subjectKeywords: Algorithms; Benchmarking; Computer architecture; Computer hardware; Costs; Java programming language; Mark-sweep; Memory management; Reference counting; Semi-spaces; Data storage equipment Generational; Java; Mark-sweep; Reference counting; Semi-space
dc.titleMyths and Realities: The Performance Impact of Garbage Collection
dc.typeConference paper
local.bibliographicCitation.lastpage36
local.bibliographicCitation.startpage25
local.contributor.affiliationBlackburn, Stephen, College of Engineering and Computer Science, ANU
local.contributor.affiliationCheng, Perry, IBM Research
local.contributor.affiliationMcKinley, Kathryn, University of Texas
local.contributor.authoremailu3789498@anu.edu.au
local.contributor.authoruidBlackburn, Stephen, u3789498
local.description.notesImported from ARIES
local.description.refereedYes
local.identifier.absfor080499 - Data Format not elsewhere classified
local.identifier.ariespublicationMigratedxPub16684
local.identifier.scopusID2-s2.0-8344281495
local.identifier.uidSubmittedByMigrated
local.type.statusPublished Version

Downloads