Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reset TLH sizing at first increment for CS #7251

Merged
merged 1 commit into from
Feb 7, 2024

Commits on Feb 6, 2024

  1. Reset TLH sizing at first increment for CS

    We reduce current refresh size at GC points, so that slow allocating
    threads have a chance to reduce their current refresh size.
    
    It's done toward the end of a GC cycle, which means that for Concurrent
    Scavegner it's done at the end of 2nd GC increment.
    
    However, it's slighty better to do it at the end of 1st increment since
    it will cuase TLH to be slighly smaller during concurrent phase of the
    cycle.
    
    During the concurrent phase there are other activities like GC
    background threads and read-barriers that effectively slow down the
    allocation rate of mutator threads, so there is less contention among
    them and less need for larger TLHs.
    
    Also, since allocate space is much smaller during concurrent phase of
    GC, smaller TLHs will lead to smaller discards for the last TLH refresh,
    which leads to more tilting and less frequent GC cycles.
    
    Signed-off-by: Aleksandar Micic <Aleksandar_Micic@ca.ibm.com>
    Aleksandar Micic authored and Aleksandar Micic committed Feb 6, 2024
    Configuration menu
    Copy the full SHA
    9d43516 View commit details
    Browse the repository at this point in the history