• Michael Lippautz's avatar
    [heap] Remove IsSweepingCompleted(AllocationSpace) · 0c0a4f0e
    Michael Lippautz authored
    Adjusting the count requires us to call into Semaphore::WaitFor which
    even on a z840 introduces a pause of at least 50us. We often call in
    here from the unmapper that tries to add pages. E.g. for reducing the
    new space size of 8M we call this for 16x2 pages, resulting in a pause
    of 1.6ms for just checking the status of the sweeper tasks.
    
    Avoiding reducing the count reduces the epilogue times. Example: FB
    infinite scroll:
    
    Before:
      heap.epilogue
        len: 102
        min: 0.01
        max: 4.83
        avg: 0.140196078431
        [0,5[: 102
    After:
      heap.epilogue
        len: 106
        min: 0.01
        max: 0.24
        avg: 0.0260377358491
        [0,5[: 106
    
    BUG=
    
    Change-Id: I296c20ae3ac4b65218e4e038a9dbce504160a764
    Reviewed-on: https://chromium-review.googlesource.com/455839
    Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#43863}
    0c0a4f0e
spaces.h 99.3 KB