Towards Hinted Collection: Annotations for decreasing garbage collector pause times

(Download PDF) (Download PS)

Citation

Philip Reames, George Necula. Towards Hinted Collection: Annotations for decreasing garbage collector pause times. International Symposium on Memory Management 2013, Seattle, WA, June 2013 (to appear)

Abstract

Garbage collection is widely used and has largely been a boon for programmer productivity. However, traditional garbage collection is approaching both practical and theoretical performance limits. In practice, the maximum heap size and heap structure of large applications are influenced as much by garbage collector behavior as by resource availability.

We present an alternate approach to garbage collection wherein the programmer provides untrusted deallocation hints. Usage of deallocation hints is similar to trusted manual deallocation, but the consequence of an inaccurate hint is lost performance not correctness. Our hinted collector algorithm uses these hints to identify a subset of unreachable objects with both better parallel asymptotic complexity and practical performance. On some benchmarks, our prototype collector implementation achieves 10-20% pause time reductions. We close with a discussion of the design trade-offs inherent in our approach and lessons to be learned from our collector.

Categories and Subject Descriptors

D.3.4 [Processors]: Memory management (garbage collection); D.3.3 [Language Constructs and Features]: Dynamic storage management

Keywords

hinted collection, deallocation hint, memory management, parallel garbage collection, mark and sweep