• mattloring's avatar
    Allocation sampling for paged/large object spaces · f3cdf8a9
    mattloring authored
    This change expands allocation sampling to include old, map, code, and large object spaces. This involved refactoring much of the observation logic out of NewSpace into Space and overriding as needed in sub-classes.
    
    Additionally, the sampling heap profiler now maintains a pair of heap observers. One observer is used for observing new space and resetting the inline allocation limit to be periodically notified of allocations. The other observes allocation across the other spaces where there is no additional work required to observe allocations.
    
    Tests have been updated to ensure that allocations are observed correctly for Paged and LargeObject spaces.
    
    R=ofrobots@google.com, hpayer@chromium.org, ulan@chromium.org
    BUG=
    
    Review URL: https://codereview.chromium.org/1625753002
    
    Cr-Commit-Position: refs/heads/master@{#33959}
    f3cdf8a9
spaces-inl.h 18.1 KB