Reducing generational copy reserve overhead with fallback compaction

Phil McGachey*, Antony L. Hosking

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

16 Citations (Scopus)


As programming languages with managed runtimes become increasingly popular, it is essential that virtual machines are implemented efficiently. The performance of the memory management subsystem can be a defining factor in the performance of the virtual machine as a whole. We present a technique by which garbage collector performance can be improved. We describe an algorithm that combines a standard generational copying collector with a mark and compact collector. We observe that, since most objects do not survive a garbage collection, it is not necessary to reserve space to copy them all. The result is a generational copying collector that operates with a smaller copy reserve overhead than traditional Appel-style collectors. We maintain correctness in the worst case through the use of mark and compact collection. When the reduced copy reserve overflows, a compacting phase ensures that all data are accommodated. We have implemented this algorithm within the framework of Jikes RVM and MMTk. For most benchmarks examined, our experiments show that performance is comparable to or better than a standard generational copying collector.

Original languageEnglish
Title of host publicationISMM 2006 - Proceedings of the 2006 InternationalSymposium on Memory Management
Number of pages12
Publication statusPublished - 2006
Externally publishedYes
EventISMM 2006 - 2006 International Symposium on Memory Management - Ottawa, ON, Canada
Duration: 10 Jun 200611 Jun 2006

Publication series

NameInternational Symposium on Memory Management, ISMM


ConferenceISMM 2006 - 2006 International Symposium on Memory Management
CityOttawa, ON


Dive into the research topics of 'Reducing generational copy reserve overhead with fallback compaction'. Together they form a unique fingerprint.

Cite this