2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC) (2008)
May 5, 2008 to May 7, 2008
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ISORC.2008.61
We propose an incremental compaction algorithm. Our compactor selects a continuous area of the heap and evacuates it by incrementally copying all objects in the area to the rest of the heap. After all objects have been copied, our compactor incrementally updates pointers pointing into the evacuated area.??During these processes, each original object and its copy are kept consistent. We implemented the compactor together with a snapshot garbage collector in the KVM. Our measurements show that (1) the largest free chunk is almost always more than 20\% as large asthe entire heap when the heap is twice as large as the maximum amount of live objects, (2) the runtime overhead is less than 20\%, and (3) the maximum pause time caused by the compactor is comparable to that caused by the snapshot collector.
real-time garbage collection, compaction, embedded system
Masahiro Yasugi, Taiichi Yuasa, Tomoharu Ugawa, "Replication-Based Incremental Compaction", 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC), vol. 00, no. , pp. 516-524, 2008, doi:10.1109/ISORC.2008.61