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

Issue 965283002: Oilpan: Implement marking time estimation (Closed)

Created:
5 years, 9 months ago by kouhei (in TOK)
Modified:
5 years, 9 months ago
CC:
blink-reviews, oilpan-reviews, kouhei+heap_chromium.org, Mads Ager (chromium), Sami (do not use)
Target Ref:
refs/remotes/origin/master
Project:
blink
Visibility:
Public.

Description

Oilpan: Implement marking time estimation Oilpan schedules GC as idleTask in the Blink scheduler. When idle, the Blink scheduler notifies Oilpan with a "deadline" timestamp, and let the idleTask client (Oilpan) decide whether to proceed with processing the task, or skip processing the task as it may take beyond the "deadline". Before this CL, Oilpan idleTask handler didn't implement this decision properly, and always proceeded with a GC assuming the GC would take 0 ms. This CL implements a heuristics so that Oilpan GC would only proceed when it is assumed to finish within the given "deadline". This CL implements a heuristics assuming that GC would take a linear time O(N_live_objs). The number of live objects is estimated by taking the ratio of heap size increase since last gc. BUG=420515 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=192397

Patch Set 1 #

Total comments: 6

Patch Set 2 : haraken review / rebase #

Patch Set 3 : fix ismainthread #

Total comments: 2

Patch Set 4 : Rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+23 lines, -3 lines) Patch
M Source/platform/heap/Heap.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M Source/platform/heap/Heap.cpp View 1 2 3 4 chunks +22 lines, -3 lines 0 comments Download

Messages

Total messages: 16 (4 generated)
kouhei (in TOK)
5 years, 9 months ago (2015-03-02 03:05:20 UTC) #2
haraken
LGTM https://codereview.chromium.org/965283002/diff/1/Source/platform/heap/Heap.cpp File Source/platform/heap/Heap.cpp (right): https://codereview.chromium.org/965283002/diff/1/Source/platform/heap/Heap.cpp#newcode2204 Source/platform/heap/Heap.cpp:2204: s_recentMarkingTime = 0.0; s_recentMarkingTime => s_markingTimeInLastGC https://codereview.chromium.org/965283002/diff/1/Source/platform/heap/Heap.cpp#newcode2637 Source/platform/heap/Heap.cpp:2637: ...
5 years, 9 months ago (2015-03-02 04:49:42 UTC) #4
kouhei (in TOK)
https://codereview.chromium.org/965283002/diff/1/Source/platform/heap/Heap.cpp File Source/platform/heap/Heap.cpp (right): https://codereview.chromium.org/965283002/diff/1/Source/platform/heap/Heap.cpp#newcode2204 Source/platform/heap/Heap.cpp:2204: s_recentMarkingTime = 0.0; On 2015/03/02 04:49:41, haraken wrote: > ...
5 years, 9 months ago (2015-03-03 04:45:08 UTC) #5
kouhei (in TOK)
+scheduler-dev fyi
5 years, 9 months ago (2015-03-03 04:46:58 UTC) #6
Sami
+rmcilroy https://codereview.chromium.org/965283002/diff/40001/Source/platform/heap/Heap.cpp File Source/platform/heap/Heap.cpp (right): https://codereview.chromium.org/965283002/diff/40001/Source/platform/heap/Heap.cpp#newcode2641 Source/platform/heap/Heap.cpp:2641: return s_markingTimeInLastGC * estimatedObjectCountIncreaseRatio; Do you find that ...
5 years, 9 months ago (2015-03-03 12:25:19 UTC) #8
rmcilroy
On 2015/03/03 04:46:58, kouhei wrote: > +scheduler-dev fyi Looks great. One thing we may want ...
5 years, 9 months ago (2015-03-03 12:36:44 UTC) #9
rmcilroy
https://codereview.chromium.org/965283002/diff/40001/Source/platform/heap/Heap.cpp File Source/platform/heap/Heap.cpp (right): https://codereview.chromium.org/965283002/diff/40001/Source/platform/heap/Heap.cpp#newcode2641 Source/platform/heap/Heap.cpp:2641: return s_markingTimeInLastGC * estimatedObjectCountIncreaseRatio; On 2015/03/03 12:25:19, Sami wrote: ...
5 years, 9 months ago (2015-03-03 12:49:13 UTC) #10
kouhei (in TOK)
On 2015/03/03 12:49:13, rmcilroy wrote: > https://codereview.chromium.org/965283002/diff/40001/Source/platform/heap/Heap.cpp > File Source/platform/heap/Heap.cpp (right): > > https://codereview.chromium.org/965283002/diff/40001/Source/platform/heap/Heap.cpp#newcode2641 > ...
5 years, 9 months ago (2015-03-23 05:18:18 UTC) #11
haraken
On 2015/03/23 05:18:18, kouhei wrote: > On 2015/03/03 12:49:13, rmcilroy wrote: > > > https://codereview.chromium.org/965283002/diff/40001/Source/platform/heap/Heap.cpp ...
5 years, 9 months ago (2015-03-23 05:32:09 UTC) #12
rmcilroy
On 2015/03/23 05:32:09, haraken wrote: > On 2015/03/23 05:18:18, kouhei wrote: > > On 2015/03/03 ...
5 years, 9 months ago (2015-03-23 12:33:34 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/965283002/60001
5 years, 9 months ago (2015-03-24 01:17:39 UTC) #15
commit-bot: I haz the power
5 years, 9 months ago (2015-03-24 01:21:17 UTC) #16
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=192397

Powered by Google App Engine
This is Rietveld 408576698