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

Issue 1404523002: [heap] inline allocation steps refactor (Closed)

Created:
5 years, 2 months ago by ofrobots
Modified:
5 years, 1 month ago
CC:
v8-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[heap] inline allocation steps refactor Expose the steps for incremental marking and idle scavenge more directly in NewSpace. Adjust the NewSpace and Heap interfaces to allow callers to be more clear about how they are interacting with inline allocation steps. This refactor prepares the ground for more consumers of inline allocation steps (e.g. sampling heap profiler.) R=hpayer@chromium.org BUG= Committed: https://crrev.com/7b704c4f9bb06386d1fb23d9593296bca9659415 Cr-Commit-Position: refs/heads/master@{#31814}

Patch Set 1 #

Total comments: 2

Patch Set 2 : generalize the step observer interface #

Total comments: 4

Patch Set 3 : Remove DisableInlineAllocationSteps function from cctest.h #

Patch Set 4 : Add tests and comments #

Total comments: 2

Patch Set 5 : Use virtual functions instead of callbacks #

Total comments: 8

Patch Set 6 : address code-review comments #

Patch Set 7 : Rebase #

Patch Set 8 : fix -Wunused-variable error on Release builds #

Patch Set 9 : prefer static cast over c-style cast #

Patch Set 10 : work-around the requirements that set_limit needs to be aligned #

Unified diffs Side-by-side diffs Delta from patch set Stats (+241 lines, -50 lines) Patch
M src/heap/heap.h View 1 2 3 4 5 6 3 chunks +3 lines, -7 lines 0 comments Download
M src/heap/heap.cc View 1 2 3 4 5 6 6 chunks +24 lines, -14 lines 0 comments Download
M src/heap/incremental-marking.h View 1 2 3 4 5 6 3 chunks +18 lines, -0 lines 0 comments Download
M src/heap/incremental-marking.cc View 1 2 3 4 5 6 5 chunks +7 lines, -4 lines 0 comments Download
M src/heap/spaces.h View 1 2 3 4 5 6 7 8 9 5 chunks +58 lines, -13 lines 0 comments Download
M src/heap/spaces.cc View 1 2 3 4 5 6 7 8 9 2 chunks +32 lines, -4 lines 0 comments Download
M test/cctest/cctest.h View 1 2 3 4 5 6 4 chunks +3 lines, -8 lines 0 comments Download
M test/cctest/test-spaces.cc View 1 2 3 4 5 6 7 8 9 1 chunk +96 lines, -0 lines 0 comments Download

Messages

Total messages: 43 (11 generated)
ofrobots
5 years, 2 months ago (2015-10-12 22:33:53 UTC) #1
ofrobots
https://codereview.chromium.org/1404523002/diff/1/src/heap/spaces.cc File src/heap/spaces.cc (right): https://codereview.chromium.org/1404523002/diff/1/src/heap/spaces.cc#newcode1415 src/heap/spaces.cc:1415: } else if (top_on_previous_step_ == 0) { I did ...
5 years, 2 months ago (2015-10-12 22:39:42 UTC) #2
Hannes Payer (out of office)
https://codereview.chromium.org/1404523002/diff/1/src/heap/spaces.h File src/heap/spaces.h (right): https://codereview.chromium.org/1404523002/diff/1/src/heap/spaces.h#newcode2774 src/heap/spaces.h:2774: intptr_t inline_allocation_limit_step_; Having a state that belongs to incremental ...
5 years, 2 months ago (2015-10-13 16:51:24 UTC) #3
ofrobots
On 2015/10/13 16:51:24, Hannes Payer wrote: > https://codereview.chromium.org/1404523002/diff/1/src/heap/spaces.h > File src/heap/spaces.h (right): > > https://codereview.chromium.org/1404523002/diff/1/src/heap/spaces.h#newcode2774 ...
5 years, 2 months ago (2015-10-15 19:34:16 UTC) #4
Hannes Payer (out of office)
Overall looking good. Adding ulan for a second opinion. https://codereview.chromium.org/1404523002/diff/20001/src/heap/spaces.h File src/heap/spaces.h (right): https://codereview.chromium.org/1404523002/diff/20001/src/heap/spaces.h#newcode2464 src/heap/spaces.h:2464: ...
5 years, 2 months ago (2015-10-16 15:31:17 UTC) #6
ofrobots
https://codereview.chromium.org/1404523002/diff/20001/src/heap/spaces.h File src/heap/spaces.h (right): https://codereview.chromium.org/1404523002/diff/20001/src/heap/spaces.h#newcode2464 src/heap/spaces.h:2464: class InlineAllocationObserver { On 2015/10/16 15:31:17, Hannes Payer wrote: ...
5 years, 2 months ago (2015-10-16 21:26:35 UTC) #7
ulan
Looking good. Any reason for using raw callbacks instead of an Observre interface that is ...
5 years, 2 months ago (2015-10-21 09:06:12 UTC) #8
ofrobots
On 2015/10/21 09:06:12, ulan wrote: > Looking good. > > Any reason for using raw ...
5 years, 2 months ago (2015-10-21 13:18:41 UTC) #9
ofrobots
On 2015/10/21 13:18:41, ofrobots wrote: > On 2015/10/21 09:06:12, ulan wrote: > > Looking good. ...
5 years, 2 months ago (2015-10-22 02:42:13 UTC) #10
ofrobots
https://codereview.chromium.org/1404523002/diff/60001/src/heap/spaces.h File src/heap/spaces.h (right): https://codereview.chromium.org/1404523002/diff/60001/src/heap/spaces.h#newcode2697 src/heap/spaces.h:2697: // Allows observation of inline allocation. The callback gets ...
5 years, 2 months ago (2015-10-22 02:42:22 UTC) #11
ulan
LGTM with comments. Please wait for Hannes' review before landing. https://codereview.chromium.org/1404523002/diff/80001/src/heap/incremental-marking.cc File src/heap/incremental-marking.cc (right): https://codereview.chromium.org/1404523002/diff/80001/src/heap/incremental-marking.cc#newcode589 ...
5 years, 2 months ago (2015-10-22 09:02:22 UTC) #12
Hannes Payer (out of office)
LGTM, minor nits. There is one regression with one of your previous CLs: https://code.google.com/p/chromium/issues/detail?id=541135 Let's ...
5 years, 2 months ago (2015-10-22 09:14:14 UTC) #13
ofrobots
Addressed comments from last round. If this looks good, the next step would be to ...
5 years, 1 month ago (2015-10-26 21:55:01 UTC) #14
Hannes Payer (out of office)
lgtm
5 years, 1 month ago (2015-10-29 14:27:28 UTC) #15
ofrobots
On 2015/10/29 14:27:28, Hannes Payer wrote: > lgtm hpayer@: I have rebased this to pick ...
5 years, 1 month ago (2015-10-30 00:12:14 UTC) #16
Hannes Payer (out of office)
On 2015/10/30 00:12:14, ofrobots wrote: > On 2015/10/29 14:27:28, Hannes Payer wrote: > > lgtm ...
5 years, 1 month ago (2015-10-30 06:12:37 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1404523002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1404523002/120001
5 years, 1 month ago (2015-10-30 06:15:55 UTC) #20
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_mips64el_compile_rel on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_mips64el_compile_rel/builds/6188)
5 years, 1 month ago (2015-10-30 06:18:15 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1404523002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1404523002/160001
5 years, 1 month ago (2015-10-30 13:40:21 UTC) #25
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_dbg on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_dbg/builds/10259)
5 years, 1 month ago (2015-10-30 14:20:37 UTC) #27
ofrobots
On 2015/10/30 14:20:37, commit-bot: I haz the power wrote: > Try jobs failed on following ...
5 years, 1 month ago (2015-10-30 18:07:28 UTC) #28
ofrobots
On 2015/10/30 18:07:28, ofrobots wrote: > On 2015/10/30 14:20:37, commit-bot: I haz the power wrote: ...
5 years, 1 month ago (2015-10-30 23:25:34 UTC) #29
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1404523002/160002 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1404523002/160002
5 years, 1 month ago (2015-11-02 14:30:38 UTC) #31
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 1 month ago (2015-11-02 14:58:13 UTC) #33
ofrobots
If there are no objections, I can land this soon.
5 years, 1 month ago (2015-11-03 15:07:54 UTC) #34
ulan
On 2015/11/03 15:07:54, ofrobots wrote: > If there are no objections, I can land this ...
5 years, 1 month ago (2015-11-03 15:15:03 UTC) #35
ulan
>This fails on Debug build because set_limit expects the limit to >be aligned. Is there ...
5 years, 1 month ago (2015-11-03 15:56:47 UTC) #36
Hannes Payer (out of office)
On 2015/11/03 15:56:47, ulan wrote: > >This fails on Debug build because set_limit expects the ...
5 years, 1 month ago (2015-11-04 00:25:38 UTC) #37
ofrobots
On 2015/11/04 00:25:38, Hannes Payer wrote: > On 2015/11/03 15:56:47, ulan wrote: > > >This ...
5 years, 1 month ago (2015-11-04 01:45:32 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1404523002/160002 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1404523002/160002
5 years, 1 month ago (2015-11-05 04:02:56 UTC) #41
commit-bot: I haz the power
Committed patchset #10 (id:160002)
5 years, 1 month ago (2015-11-05 04:45:23 UTC) #42
commit-bot: I haz the power
5 years, 1 month ago (2015-11-05 04:45:40 UTC) #43
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/7b704c4f9bb06386d1fb23d9593296bca9659415
Cr-Commit-Position: refs/heads/master@{#31814}

Powered by Google App Engine
This is Rietveld 408576698