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

Issue 1643473002: Revert of [heap] Parallel newspace evacuation, semispace copy, and compaction \o/ (Closed)

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

Description

Revert of [heap] Parallel newspace evacuation, semispace copy, and compaction \o/ (patchset #16 id:620001 of https://codereview.chromium.org/1577853007/ ) Reason for revert: [Sheriff] Leads to crashes on all webrtc chromium testers, e.g.: https://build.chromium.org/p/chromium.webrtc/builders/Mac%20Tester/builds/49664 Original issue's description: > [heap] Parallel newspace evacuation, semispace copy, and compaction \o/ > > All parallelism can be turned off using --predictable, or --noparallel-compaction. > > This patch completely parallelizes > - semispace copy: from space -> to space (within newspace) > - newspace evacuation: newspace -> oldspace > - oldspace compaction: oldspace -> oldspace > > Previously newspace has been handled sequentially (semispace copy, newspace > evacuation) before compacting oldspace in parallel. However, on a high level > there are no dependencies between those two actions, hence we parallelize them > altogether. We base the number of evacuation tasks on the overall set of > to-be-processed pages (newspace + oldspace compaction pages). > > Some low-level details: > - The hard cap on number of tasks has been lifted > - We cache store buffer entries locally before merging them back into the global > StoreBuffer in a finalization phase. > - We cache AllocationSite operations locally before merging them back into the > global pretenuring storage in a finalization phase. > - AllocationSite might be compacted while they would be needed for newspace > evacuation. To mitigate any problems we defer checking allocation sites for > newspace till merging locally buffered data. > > CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_asan_rel,v8_linux64_tsan_rel,v8_mac64_asan_rel > BUG=chromium:524425 > LOG=N > R=hpayer@chromium.org, ulan@chromium.org > > Committed: https://crrev.com/8f0fd8c0370ae8c5aab56491b879d7e30c329062 > Cr-Commit-Position: refs/heads/master@{#33523} TBR=hpayer@chromium.org,ulan@chromium.org,mlippautz@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:524425 Committed: https://crrev.com/85ba94f28ce4b5d64e4c148efb1fee85bdb6579b Cr-Commit-Position: refs/heads/master@{#33539}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+321 lines, -479 lines) Patch
M BUILD.gn View 1 chunk +0 lines, -1 line 0 comments Download
M src/globals.h View 1 chunk +0 lines, -8 lines 0 comments Download
M src/heap/array-buffer-tracker.h View 2 chunks +0 lines, -2 lines 0 comments Download
M src/heap/array-buffer-tracker.cc View 2 chunks +0 lines, -3 lines 0 comments Download
M src/heap/heap.h View 5 chunks +6 lines, -9 lines 0 comments Download
M src/heap/heap.cc View 1 chunk +7 lines, -9 lines 0 comments Download
M src/heap/heap-inl.h View 3 chunks +35 lines, -48 lines 0 comments Download
M src/heap/mark-compact.h View 6 chunks +18 lines, -12 lines 0 comments Download
M src/heap/mark-compact.cc View 28 chunks +229 lines, -286 lines 0 comments Download
M src/heap/spaces.h View 2 chunks +15 lines, -1 line 0 comments Download
M src/heap/store-buffer.h View 2 chunks +4 lines, -33 lines 0 comments Download
M src/heap/store-buffer-inl.h View 2 chunks +6 lines, -16 lines 0 comments Download
M src/objects.h View 1 chunk +0 lines, -1 line 0 comments Download
M src/objects.cc View 1 chunk +1 line, -2 lines 0 comments Download
M src/objects-inl.h View 1 chunk +0 lines, -3 lines 0 comments Download
D src/utils-inl.h View 1 chunk +0 lines, -37 lines 0 comments Download
M test/cctest/heap/test-heap.cc View 1 chunk +0 lines, -7 lines 0 comments Download
M tools/gyp/v8.gyp View 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 6 (2 generated)
Michael Achenbach
Created Revert of [heap] Parallel newspace evacuation, semispace copy, and compaction \o/
4 years, 10 months ago (2016-01-27 09:11:13 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1643473002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1643473002/1
4 years, 10 months ago (2016-01-27 09:11:15 UTC) #2
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 10 months ago (2016-01-27 09:11:34 UTC) #4
commit-bot: I haz the power
4 years, 10 months ago (2016-01-27 09:11:59 UTC) #6
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/85ba94f28ce4b5d64e4c148efb1fee85bdb6579b
Cr-Commit-Position: refs/heads/master@{#33539}

Powered by Google App Engine
This is Rietveld 408576698