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} |
||
---|---|---|
.. | ||
heap-tester.h | ||
heap-utils.cc | ||
heap-utils.h | ||
test-alloc.cc | ||
test-array-buffer-tracker.cc | ||
test-compaction.cc | ||
test-concurrent-marking.cc | ||
test-embedder-tracing.cc | ||
test-heap.cc | ||
test-incremental-marking.cc | ||
test-invalidated-slots.cc | ||
test-lab.cc | ||
test-mark-compact.cc | ||
test-page-promotion.cc | ||
test-spaces.cc | ||
test-weak-references.cc |