• Ulan Degenbaev's avatar
    [heap] Rework incremental marking scheduling · 4c65986a
    Ulan Degenbaev authored
    The new scheduling reduces the main thread marking performed in
    tasks and on allocation. It is based on two counters:
    - bytes_marked,
    - scheduled_bytes_to_mark.
    
    The bytes_marked accounts marking done both the main thread and
    the concurrent threads. The scheduled_bytes_to_mark increases based
    on allocated bytes and also based on time passed since the start
    of marking. The main thread steps are allowed to mark the minimal
    amount if bytes_marked is greater than scheduled_bytes_to_mark.
    
    This also changes tasks posted for marking. Before only normal
    tasks were posted. Now delayed tasks are posted if the marker is
    ahead of schedule.
    
    Bug: 926189
    
    Change-Id: I5bc9c33a5ecfc9f8d09f78d08ae277d16a2779ca
    Reviewed-on: https://chromium-review.googlesource.com/c/1443056
    Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
    Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#59433}
    4c65986a
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
custom_deps Loading commit data...
docs Loading commit data...
gni Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...