Onward! 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
co-located with SPLASH 2017
Fri 27 Oct 2017 11:30 - 12:00 at Regency B - Usability and Performance Chair(s): Sam Tobin-Hochstadt

In this paper we present a study of how Java programs dispose of objects. Unlike prior work on object demographics and lifetime patterns, our goal is to precisely characterize the actions that cause objects to become unreachable. We use a recently-developed tracing tool, called Elephant Tracks, which can localize object deaths within a specific method and tell us the proximal cause. Our analysis centers around garbage clusters: groups of connected objects that become unreachable at precisely the same time due to a single program action. We classify these clusters using traditional features, such as size, allocation site, and lifetime, and using new ones, such as death site and cause of death. We then use this knowledge about garbage clusters in a new GC algorithm: the Cluster Aware Garbage Collection (CAGC) algorithm.

We present results for a set of standard benchmarks including SPECJVM98, SPECjbb, and DaCapo. We identify several patterns that could inform the design of new collectors or tuning of existing systems. Most garbage clusters are small, suggesting that these programs almost always dispose of large structures in a piecemeal fashion. In addition, most clusters die in one of only a dozen or so places in the program. Furthermore, these death sites are much more stable and predictable than object lifetimes. Finally we show that the CAGC algorithm can in certain cases improve GC performance.

Fri 27 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
Usability and PerformanceOnward! Papers at Regency B
Chair(s): Sam Tobin-Hochstadt Indiana University
10:30
30m
Talk
Error Messages are Classifiers: A Process to Design and Evaluate Error Messages
Onward! Papers
John Wrenn Brown University, Shriram Krishnamurthi Brown University, USA
11:00
30m
Talk
You Can Have it All: Abstraction and Good Cache Performance
Onward! Papers
Juliana Franco Imperial College London, Martin Hagelin (Dirac), Tobias Wrigstad Uppsala University, Sophia Drossopoulou , Susan Eisenbach Imperial College London
11:30
30m
Talk
Garbology: A Study of How Java Objects Die
Onward! Papers
Raoul Veroy Tufts University, Sam Guyer Tufts University