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

Issue 2026633003: Reland "[heap] Fine-grained JSArrayBuffer tracking" (Closed)

Created:
4 years, 6 months ago by Michael Lippautz
Modified:
4 years, 6 months ago
CC:
v8-reviews_googlegroups.com, Hannes Payer (out of office), ulan, Paweł Hajdan Jr.
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Track based on JSArrayBuffer addresses on pages instead of the attached backing store. Details of tracking: - Scavenge: New space pages are processes in bulk on the main thread - MC: Unswept pages are processed in bulk in parallel. All other pages are processed by the sweeper concurrently. BUG=chromium:611688 LOG=N TEST=cctest/test-array-buffer-tracker/* CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_tsan_rel,v8_mac64_asan_rel Committed: https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a Cr-Commit-Position: refs/heads/master@{#36653}

Patch Set 1 #

Patch Set 2 : fixed and added test #

Patch Set 3 : New implementation based on markbits #

Total comments: 12

Patch Set 4 : Addressed comments #

Patch Set 5 : rebase #

Patch Set 6 : properly register the right visitor #

Patch Set 7 : Tests should not assert for promotion decisions but only for tracking #

Unified diffs Side-by-side diffs Delta from patch set Stats (+570 lines, -222 lines) Patch
M include/v8.h View 1 chunk +1 line, -1 line 0 comments Download
M src/heap/array-buffer-tracker.h View 1 2 3 1 chunk +59 lines, -40 lines 0 comments Download
M src/heap/array-buffer-tracker.cc View 1 2 3 1 chunk +129 lines, -93 lines 0 comments Download
M src/heap/heap.h View 1 2 3 4 4 chunks +12 lines, -6 lines 0 comments Download
M src/heap/heap.cc View 1 2 3 4 6 chunks +3 lines, -11 lines 0 comments Download
M src/heap/mark-compact.cc View 1 2 3 4 7 chunks +13 lines, -17 lines 0 comments Download
M src/heap/objects-visiting.h View 1 2 3 2 chunks +0 lines, -2 lines 0 comments Download
M src/heap/objects-visiting-inl.h View 1 2 3 4 5 4 chunks +8 lines, -35 lines 0 comments Download
M src/heap/scavenger.cc View 1 2 3 4 5 2 chunks +2 lines, -14 lines 0 comments Download
M src/heap/spaces.h View 1 2 3 4 5 chunks +22 lines, -1 line 0 comments Download
M src/heap/spaces.cc View 3 chunks +10 lines, -1 line 0 comments Download
M src/heap/spaces-inl.h View 1 chunk +0 lines, -1 line 0 comments Download
M test/cctest/cctest.gyp View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M test/cctest/heap/heap-utils.h View 1 chunk +4 lines, -0 lines 0 comments Download
M test/cctest/heap/heap-utils.cc View 1 chunk +15 lines, -0 lines 0 comments Download
A test/cctest/heap/test-array-buffer-tracker.cc View 1 2 3 4 5 6 1 chunk +291 lines, -0 lines 0 comments Download

Messages

Total messages: 35 (18 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2026633003/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2026633003/60001
4 years, 6 months ago (2016-05-31 11:24:17 UTC) #4
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 6 months ago (2016-05-31 12:16:30 UTC) #7
Michael Lippautz
4 years, 6 months ago (2016-05-31 13:31:43 UTC) #9
Michael Lippautz
whoop, please take a look at the new implementation that makes use of the existing ...
4 years, 6 months ago (2016-06-01 09:32:17 UTC) #11
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2026633003/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2026633003/100001
4 years, 6 months ago (2016-06-01 11:15:29 UTC) #13
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 6 months ago (2016-06-01 11:57:13 UTC) #15
Hannes Payer (out of office)
I like it a lot! https://codereview.chromium.org/2026633003/diff/100001/src/heap/array-buffer-tracker.cc File src/heap/array-buffer-tracker.cc (right): https://codereview.chromium.org/2026633003/diff/100001/src/heap/array-buffer-tracker.cc#newcode40 src/heap/array-buffer-tracker.cc:40: void LocalArrayBufferTracker::FreeDead() { DCHECK ...
4 years, 6 months ago (2016-06-01 13:44:17 UTC) #16
Michael Lippautz
All done. https://codereview.chromium.org/2026633003/diff/100001/src/heap/array-buffer-tracker.cc File src/heap/array-buffer-tracker.cc (right): https://codereview.chromium.org/2026633003/diff/100001/src/heap/array-buffer-tracker.cc#newcode40 src/heap/array-buffer-tracker.cc:40: void LocalArrayBufferTracker::FreeDead() { On 2016/06/01 13:44:17, Hannes ...
4 years, 6 months ago (2016-06-01 14:19:19 UTC) #17
Hannes Payer (out of office)
lgtm
4 years, 6 months ago (2016-06-01 14:22:32 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2026633003/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2026633003/140001
4 years, 6 months ago (2016-06-01 14:27:30 UTC) #21
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux_gc_stress_dbg on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux_gc_stress_dbg/builds/142)
4 years, 6 months ago (2016-06-01 14:40:19 UTC) #23
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2026633003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2026633003/160001
4 years, 6 months ago (2016-06-01 15:09:00 UTC) #25
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: v8_linux64_asan_rel_ng on tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_asan_rel_ng/builds/2488) v8_linux64_asan_rel_ng_triggered on ...
4 years, 6 months ago (2016-06-01 15:24:52 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2026633003/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2026633003/180001
4 years, 6 months ago (2016-06-01 15:48:34 UTC) #30
commit-bot: I haz the power
Committed patchset #7 (id:180001)
4 years, 6 months ago (2016-06-01 16:29:10 UTC) #32
commit-bot: I haz the power
Patchset 7 (id:??) landed as https://crrev.com/279e274eccf95fbb4bd41d908b9153acf6ec118a Cr-Commit-Position: refs/heads/master@{#36653}
4 years, 6 months ago (2016-06-01 16:30:47 UTC) #34
Michael Lippautz
4 years, 6 months ago (2016-06-02 06:46:31 UTC) #35
Message was sent while issue was closed.
A revert of this CL (patchset #7 id:180001) has been created in
https://codereview.chromium.org/2032973002/ by mlippautz@chromium.org.

The reason for reverting is: Also failing with the new implementation:
 
https://build.chromium.org/p/chromium.gpu/builders/Linux%20Debug%20%28NVIDIA%...

Will do a local repro now..

Powered by Google App Engine
This is Rietveld 408576698