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

Issue 2948983002: Low memory page navigation GC for low end devices (Closed)

Created:
3 years, 6 months ago by keishi
Modified:
3 years, 5 months ago
Reviewers:
haraken, Ilya Sherman
CC:
chromium-reviews, blink-reviews, kinuko+watch, blink-reviews-bindings_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Low memory page navigation GC for low end devices Until now we have avoided running GCs during page loads but for low end devices in low memory situations we should do a page navigation GC to reduce peak memory usage. system_health.memory_mobile showed that we can expect >10MB peak RSS reduction on certain sites. Design doc: https://docs.google.com/document/d/13f25LGfpWWOOWk9U44it9Gva6i4JRsrQDlnxAJeSEZo/edit?usp=sharing BUG=732664 Review-Url: https://codereview.chromium.org/2948983002 Cr-Commit-Position: refs/heads/master@{#482556} Committed: https://chromium.googlesource.com/chromium/src/+/0787b78381f3abb74a078bde05a6084bf0ed8d2c

Patch Set 1 #

Patch Set 2 : fix #

Total comments: 8

Patch Set 3 : fix #

Total comments: 7

Patch Set 4 : fix #

Total comments: 2

Patch Set 5 : fix #

Unified diffs Side-by-side diffs Delta from patch set Stats (+116 lines, -49 lines) Patch
M third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h View 1 2 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.cpp View 1 2 3 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/RemoteWindowProxy.h View 1 2 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/RemoteWindowProxy.cpp View 1 2 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.h View 1 2 2 chunks +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp View 1 2 3 4 2 chunks +36 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/WindowProxy.h View 1 2 3 chunks +4 lines, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/WindowProxy.cpp View 1 2 1 chunk +6 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.h View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/WindowProxyManager.cpp View 1 2 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/exported/WebFrame.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/exported/WebMemoryStatistics.cpp View 1 chunk +2 lines, -29 lines 0 comments Download
M third_party/WebKit/Source/platform/wtf/allocator/Partitions.h View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/wtf/allocator/Partitions.cpp View 1 chunk +30 lines, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 chunks +19 lines, -8 lines 0 comments Download

Messages

Total messages: 27 (16 generated)
keishi
PTAL Draft design doc (with comments): https://docs.google.com/document/d/1vJKPuMbJ5CQiFwrkxvTrB-x25SKF22-ui42oExvwpP0/edit Public design doc in issue description To trigger ...
3 years, 6 months ago (2017-06-22 05:46:22 UTC) #4
haraken
LGTM https://codereview.chromium.org/2948983002/diff/20001/third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h File third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h (right): https://codereview.chromium.org/2948983002/diff/20001/third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h#newcode77 third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h:77: void DisposeContext(Lifecycle next_status, bool reusing_frame) override; Can we ...
3 years, 6 months ago (2017-06-23 04:17:01 UTC) #7
keishi
https://codereview.chromium.org/2948983002/diff/20001/third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h File third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h (right): https://codereview.chromium.org/2948983002/diff/20001/third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h#newcode77 third_party/WebKit/Source/bindings/core/v8/LocalWindowProxy.h:77: void DisposeContext(Lifecycle next_status, bool reusing_frame) override; On 2017/06/23 04:17:00, ...
3 years, 6 months ago (2017-06-23 06:25:03 UTC) #10
haraken
LGTM
3 years, 6 months ago (2017-06-23 06:25:51 UTC) #13
keishi
+isherman Could you review the change to tools/metrics/histograms/histograms.xml ? Thanks.
3 years, 6 months ago (2017-06-23 06:28:52 UTC) #15
Ilya Sherman
https://codereview.chromium.org/2948983002/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp File third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp (right): https://codereview.chromium.org/2948983002/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp#newcode79 third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp:79: ("LowMemoryPageNavigationGC.Reduction", 0, 512, 50)); nit: 0 is not a ...
3 years, 5 months ago (2017-06-26 18:48:37 UTC) #18
keishi
https://codereview.chromium.org/2948983002/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp File third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp (right): https://codereview.chromium.org/2948983002/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp#newcode79 third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp:79: ("LowMemoryPageNavigationGC.Reduction", 0, 512, 50)); On 2017/06/26 18:48:37, Ilya Sherman ...
3 years, 5 months ago (2017-06-27 03:44:53 UTC) #19
Ilya Sherman
Metrics LGTM % nits. Thanks! https://codereview.chromium.org/2948983002/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp File third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp (right): https://codereview.chromium.org/2948983002/diff/40001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp#newcode79 third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp:79: ("LowMemoryPageNavigationGC.Reduction", 0, 512, 50)); ...
3 years, 5 months ago (2017-06-27 03:48:44 UTC) #20
keishi
Thanks! https://codereview.chromium.org/2948983002/diff/60001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp File third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp (right): https://codereview.chromium.org/2948983002/diff/60001/third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp#newcode79 third_party/WebKit/Source/bindings/core/v8/V8GCForContextDispose.cpp:79: ("LowMemoryPageNavigationGC.Reduction", 1, 512, 50)); On 2017/06/27 03:48:44, Ilya ...
3 years, 5 months ago (2017-06-27 04:30:27 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2948983002/80001
3 years, 5 months ago (2017-06-27 04:30:46 UTC) #24
commit-bot: I haz the power
3 years, 5 months ago (2017-06-27 07:03:57 UTC) #27
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://chromium.googlesource.com/chromium/src/+/0787b78381f3abb74a078bde05a6...

Powered by Google App Engine
This is Rietveld 408576698