496d05967c
Currently V8 can enter CPU thrashing GC loop near the heap limit. In such cases it is better to trigger an out-of-memory failure earlier to avoid wasting CPU time and to avoid unresponsiveness. This patch adds a mechanism for tracking consecutive ineffective GCs. A GC is considered ineffective if the heap size after the GC is still close to the heap limit and if the average mutator utilization dropped below a fixed threshold. V8 execution is aborted after four consecutive ineffective GCs. Bug: chromium:824214 Change-Id: I647032707d49e5383e1317c5e7616dd57077ea32 Reviewed-on: https://chromium-review.googlesource.com/978178 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#52244} |
||
---|---|---|
.. | ||
benchmarks | ||
cctest | ||
common | ||
debugger | ||
fuzzer | ||
inspector | ||
intl | ||
js-perf-test | ||
memory | ||
message | ||
mjsunit | ||
mkgrokdump | ||
mozilla | ||
preparser | ||
test262 | ||
unittests | ||
wasm-spec-tests | ||
webkit | ||
bot_default.isolate | ||
BUILD.gn | ||
d8_default.isolate | ||
default.isolate | ||
optimize_for_size.isolate | ||
perf.isolate |