• Leszek Swirski's avatar
    [offthread] Check memory pressure after merging · 5b878283
    Leszek Swirski authored
    Currently, there is no indication of memory pressure after merging pages
    from off-thread space into the heap. This can mean that with lots of
    off-thread compilations, we eventually run out of pages in the memory
    allocator.
    
    Now, trigger a critical memory pressure notification after merging if
    the old generation is close to being unexpandable. We may want to add
    other heuristics here (e.g. moderate memory pressure if the heap is
    highly fragmented), or possibly add similar checks when the off-thread
    space is initialized, but this works for now.
    
    As a drive-by, inline the NotifyOffThreadSpaceMerged call into the
    off-thread factory merge -- we already do a bunch of special merging
    stuff in there, and nowhere else, so we may as well be explicit in what
    we're actually doing. This also allows us to do a pre-check on old-space
    size and hard limits just before the merge.
    
    Bug: chromium:1011762
    Change-Id: Ic2b46057cf751bd7eaf787f46beaaf4df36e78fe
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2131915
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#67357}
    5b878283
Name
Last commit
Last update
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...
.flake8 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...
COMMON_OWNERS Loading commit data...
DEPS Loading commit data...
ENG_REVIEW_OWNERS Loading commit data...
INFRA_OWNERS Loading commit data...
INTL_OWNERS 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...
MIPS_OWNERS Loading commit data...
OWNERS Loading commit data...
PPC_OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
S390_OWNERS Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...