Reland "heap: Fix initial GC configuration for C++-only heaps"
This is a reland of 7ef67b2e Manually checked that the CL was not the culprit breaking media_blink_unittests --gtest_filter=WebMediaPlayerImplTest.MemDumpReporting Original change's description: > heap: Fix initial GC configuration for C++-only heaps > > Heaps in V8 start with a large limit that is shrunk upon young > generation GCs, based on some liveness estimate. This provides best > throughput during startup while at the same time finding a reasonable > first limit. > > For C++ (embedder memory) there is no estimate which is why it was > piggy-backing on V8. This breaks in scenarios where no JS memory is > allocated. > > In this fix we start a memory reducer after embedder memory has hit > the activation threshold if no GC happened so far. As soon as a single > Scavenger has happened, we leave it up to the JS estimate to figure > out a limit. Memory reducing GCs will then find a regular limit based > on the initial live size. > > Drive-by: Give embedders the same activiation threshold of 8MB as JS. > > Bug: chromium:1217076 > Change-Id: I8469696002ac2af8d75d6b47def062d2608387a1 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2944935 > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > Commit-Queue: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#75012} Bug: chromium:1217076 Change-Id: I482d8525379e33095834d5b41be8bb49bdd8a5d4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2949094 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#75048}
Showing
Please
register
or
sign in
to comment