Sun 14 Jun 2015 14:00 - 14:25 at C123 - Managed Languages Chair(s): Zheng Zhang

Yieldpoints are critical to the implementation of high performance garbage collected languages, yet the design space is not well understood. Yieldpoints allow a running program to be interrupted at well-defined points in its execution, facilitating exact garbage collection, biased locking, on-stack replacement, profiling, and other important virtual machine behaviors.

In this paper we identify and evaluate yieldpoint design choices, including previously undocumented but promising designs. One of the designs we identify opens significant new opportunities for very low overhead profiling. We measure the frequency with which yieldpoints are executed and establish a methodology for evaluating the common case execution time overhead. We also measure the median and worst case time-to-yield.

We find that Java benchmarks execute about 100M yieldpoints per second, of which about 1/100000 are taken. The average execution time overhead for untaken yieldpoints ranges from 2.3% to 0.3% on modern hardware, depending on the design, and we find that the designs trade off total overhead with worst case time-to-yield.

This analysis gives new insight into a critical but overlooked aspect of garbage collector implementation, and identifies a new yieldpoint design with low overhead and new opportunities for very low overhead profiling.

Sun 14 Jun

Displayed time zone: Tijuana, Baja California change

14:00 - 15:40
Managed LanguagesResearch Papers at C123
Chair(s): Zheng Zhang Rutgers University
14:00
25m
Talk
Stop and Go: Understanding Yieldpoint Behavior
Research Papers
Yi Lin Australian National University, Kunshan Wang Australian National University, Steve Blackburn Australian National University , Tony Hosking Purdue University, Michael Norrish NICTA
Link to publication
14:25
25m
Talk
Safe and Efficient Hybrid Memory Management for Java
Research Papers
Codrut Stancu University of California, Irvine & Oracle Labs, Christian Wimmer Oracle Labs, Stefan Brunthaler University of California, Irvine, Per Larsen University of California, Irvine, Michael Franz University of California, Irvine
Link to publication
14:50
25m
Talk
A Partial Read Barrier for Efficient Support of Live Object-oriented Programming
Research Papers
Eliot Miranda Cadence Design Systems, Clément Béra RMOD - INRIA Lille Nord Europe
Link to publication
15:15
25m
Talk
Memento Mori: Dynamic Allocation-Site-Based Optimizations
Research Papers
Link to publication