Cultural advice

The Australian National University acknowledges, celebrates and pays our respects to the Ngunnawal and Ngambri people of the Canberra region and to all First Nations Australians on whose traditional lands we meet and work, and whose cultures are among the oldest continuing cultures in human history.

Aboriginal and Torres Strait Islander peoples are advised that ANU Library collections may include images, names, voices, and other representations of deceased persons.

Material in the collection may contain terms, language or views that reflect the period in which the item was created and may be considered inappropriate today.

The Garbage Collection Advantage. Improving Program Locality.

dc.contributor.authorHuang, Xianglong
dc.contributor.authorBlackburn, Stephen
dc.contributor.authorMcKinley, Kathryn
dc.contributor.authorMoss, J Eliot B
dc.contributor.authorWang, Zhenlin
dc.contributor.authorCheng, Perry
dc.coverage.spatialVancouver Canada
dc.date.accessioned2015-12-13T22:38:07Z
dc.date.available2015-12-13T22:38:07Z
dc.date.createdOctober 14 2004
dc.date.issued2004
dc.date.updated2015-12-11T09:40:47Z
dc.description.abstractAs improvements in processor speed continue to outpace improvements in cache and memory speed, poor locality increasingly degrades performance. Because copying garbage collectors move objects, they have an opportunity to improve locality. However, no static copying order is guaranteed to match program traversal orders. This paper introduces online object reordering (OOR) which includes a new dynamic, online class analysis for Java that detects program traversal patterns and exploits them in a copying collector. OOR uses runtime method sampling that drives just-in-time (JIT) compilation. For each hot (frequently executed) method, OOR analysis identifies the hot field accesses. At garbage collection time, the OOR collector then copies referents of hot fields together with their parent. Enhancements include static analysis to exclude accesses in cold basic blocks, heuristics that decay heat to respond to phase changes, and a separate space for hot objects. The overhead of OOR is on average negligible and always less than 2% on Java benchmarks in Jikes RVM with MMTk. We compare program performance of OOR to static class-oblivious copying orders (e.g., breadth and depth first). Performance variation due to static orders is often low, but can be up to 25%. In contrast, OOR matches or improves upon the best static order since its history-based copying tunes memory layout to program traversal.
dc.identifier.isbn1581138318
dc.identifier.urihttp://hdl.handle.net/1885/77403
dc.publisherAssociation for Computing Machinery Inc (ACM)
dc.relation.ispartofseriesACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA 2004)
dc.source19th Conference on Object-Oriented Progamming, Systems, Languages, and Applications. Conference Proceedings.
dc.subjectKeywords: Adaptive; Compiler-assisted; Generational; Locality; Benchmarking; Costs; Java programming language; Mathematical models; Object oriented programming; Optimization; Real time systems; Software engineering Adaptive; Compiler-assisted; Generational; Locality
dc.titleThe Garbage Collection Advantage. Improving Program Locality.
dc.typeConference paper
local.bibliographicCitation.lastpage80
local.bibliographicCitation.startpage69
local.contributor.affiliationHuang, Xianglong, University of Texas
local.contributor.affiliationBlackburn, Stephen, College of Engineering and Computer Science, ANU
local.contributor.affiliationMcKinley, Kathryn, University of Texas
local.contributor.affiliationMoss, J Eliot B, University of Massachusetts
local.contributor.affiliationWang, Zhenlin, Michigan Technological University
local.contributor.affiliationCheng, Perry, IBM Research
local.contributor.authoruidBlackburn, Stephen, u3789498
local.description.notesImported from ARIES
local.description.refereedYes
local.identifier.absfor080499 - Data Format not elsewhere classified
local.identifier.ariespublicationMigratedxPub6264
local.identifier.doi10.1145/1035292.1028983
local.identifier.scopusID2-s2.0-17044367876
local.type.statusPublished Version

Downloads