Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(416)

Issue 1369783002: Reinstate memory pressure Oilpan GC check post V8 major GCs. (Closed)

Created:
5 years, 2 months ago by sof
Modified:
5 years, 2 months ago
Reviewers:
oilpan-reviews, haraken
CC:
blink-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Reinstate memory pressure Oilpan GC check post V8 major GCs. To handle workloads with high allocation rates, where the Oilpan heap allocations only make up a small fraction compared to what's allocated by either PartitionAlloc or V8, use V8's major GC notification as a signal to check for the need to perform an "emergency" memory pressure conservative GC. Otherwise there might not be enough Oilpan allocations made to trigger out-of-line heap allocations which trigger that same check. These GCs and workloads are rare, but reduces the possibility of running into OOM conditions when Oilpan is faced with those. An example where it does show up is Dromaeo's dom-modify.html, which has a subtest that heavily allocates Text nodes, each holding a longer string. As each Text node is a small Oilpan heap object, not a lot of heap is needed for the nodes, but PartitionAlloc's buffer partition size grows much more sharply and risks signalling OOM. V8's RTS notices the memory pressure and triggers extra GCs; reuse that signal in Oilpan. Hence, bring back the check that https://codereview.chromium.org/1190513006/ added for checking this condition. R=haraken BUG=474470 Committed: https://crrev.com/431fb544a364ebd80a8db6b03b90cc5a62e4407a Cr-Commit-Position: refs/heads/master@{#351044}

Patch Set 1 #

Total comments: 11

Patch Set 2 : introduce conditional helper for mem-pressure GCs #

Unified diffs Side-by-side diffs Delta from patch set Stats (+26 lines, -2 lines) Patch
M third_party/WebKit/Source/platform/heap/ThreadState.h View 1 1 chunk +9 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/heap/ThreadState.cpp View 1 2 chunks +17 lines, -0 lines 0 comments Download

Messages

Total messages: 10 (3 generated)
sof
please take a look.
5 years, 2 months ago (2015-09-25 18:09:28 UTC) #2
haraken
https://codereview.chromium.org/1369783002/diff/1/third_party/WebKit/Source/platform/heap/ThreadState.cpp File third_party/WebKit/Source/platform/heap/ThreadState.cpp (right): https://codereview.chromium.org/1369783002/diff/1/third_party/WebKit/Source/platform/heap/ThreadState.cpp#newcode683 third_party/WebKit/Source/platform/heap/ThreadState.cpp:683: if (gcType == V8MajorGC && shouldForceMemoryPressureGC()) { Is there ...
5 years, 2 months ago (2015-09-26 02:04:37 UTC) #4
sof
https://codereview.chromium.org/1369783002/diff/1/third_party/WebKit/Source/platform/heap/ThreadState.cpp File third_party/WebKit/Source/platform/heap/ThreadState.cpp (right): https://codereview.chromium.org/1369783002/diff/1/third_party/WebKit/Source/platform/heap/ThreadState.cpp#newcode683 third_party/WebKit/Source/platform/heap/ThreadState.cpp:683: if (gcType == V8MajorGC && shouldForceMemoryPressureGC()) { On 2015/09/26 ...
5 years, 2 months ago (2015-09-26 06:17:22 UTC) #5
haraken
LGTM https://codereview.chromium.org/1369783002/diff/1/third_party/WebKit/Source/platform/heap/ThreadState.cpp File third_party/WebKit/Source/platform/heap/ThreadState.cpp (right): https://codereview.chromium.org/1369783002/diff/1/third_party/WebKit/Source/platform/heap/ThreadState.cpp#newcode712 third_party/WebKit/Source/platform/heap/ThreadState.cpp:712: On 2015/09/26 06:17:22, sof wrote: > On 2015/09/26 ...
5 years, 2 months ago (2015-09-26 12:38:20 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1369783002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1369783002/20001
5 years, 2 months ago (2015-09-28 06:04:33 UTC) #8
commit-bot: I haz the power
Committed patchset #2 (id:20001)
5 years, 2 months ago (2015-09-28 09:29:41 UTC) #9
commit-bot: I haz the power
5 years, 2 months ago (2015-09-28 09:30:29 UTC) #10
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/431fb544a364ebd80a8db6b03b90cc5a62e4407a
Cr-Commit-Position: refs/heads/master@{#351044}

Powered by Google App Engine
This is Rietveld 408576698