Stop and go: Understanding yieldpoint behavior

    Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

    8 Citations (Scopus)

    Abstract

    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 designs and optimizations. One of the designs we identify opens 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 100Myieldpoints per second, of which about 1=20000 are taken. The average execution time overhead for untaken yieldpoints on the VM we use ranges from 2:5% to close to zero 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 optimization and new opportunities for very low overhead profiling.

    Original languageEnglish
    Title of host publicationISMM 2015 - Proceedings of the 2015 ACM SIGPLAN International Symposium on Memory Management, co-located with PLDI 2015
    EditorsMichael Bond, Antony L. Hosking
    PublisherAssociation for Computing Machinery
    Pages70-80
    Number of pages11
    ISBN (Electronic)9781450335898
    DOIs
    Publication statusPublished - 14 Jun 2015
    Event14th ACM SIGPLAN International Symposium on Memory Management, ISMM 2015 - Portland, United States
    Duration: 14 Jun 2015 → …

    Publication series

    NameInternational Symposium on Memory Management, ISMM
    Volume14-June-2015

    Conference

    Conference14th ACM SIGPLAN International Symposium on Memory Management, ISMM 2015
    Country/TerritoryUnited States
    CityPortland
    Period14/06/15 → …

    Fingerprint

    Dive into the research topics of 'Stop and go: Understanding yieldpoint behavior'. Together they form a unique fingerprint.

    Cite this