Cold Object Identification in the Java Virtual Machine
Kim T. Briggs, Baoguo Zhou, Gerhard W. Dueck

TL;DR
This paper introduces a runtime stack-based framework for identifying and managing 'cold' objects in the Java heap, aiming to optimize memory usage by segregating infrequently accessed objects.
Contribution
It presents a novel stack-based method with an Access Barrier for detecting cold objects and evaluates its effectiveness using SPECjvm2008 benchmarks.
Findings
Effective detection of cold objects at runtime
Reduced memory footprint through object sequestering
Demonstrated efficiency with SPECjvm2008 benchmarks
Abstract
Many Java applications instantiate objects within the Java heap that are persistent but seldom if ever referenced by the application. Examples include strings, such as error messages, and collections of value objects that are preloaded for fast access but they may include objects that are seldom referenced. This paper describes a stack-based framework for detecting these "cold" objects at runtime, with a view to marshaling and sequestering them in designated regions of the heap where they may be preferentially paged out to a backing store, thereby freeing physical memory pages for occupation by more active objects. Furthermore, we evaluate the correctness and efficiency of stack-based approach with an Access Barrier. The experimental results from a series of SPECjvm2008 benchmarks are presented.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSecurity and Verification in Computing · Parallel Computing and Optimization Techniques · Software Testing and Debugging Techniques
