1. 05 Feb, 2020 1 commit
    • Michael Lippautz's avatar
      Reland "heap: Delay completing marking" · 562c15d6
      Michael Lippautz authored
      Delay completing marking (and thus the atomic GC pause) during JS
      executions, increasing the chance to finalize the garbage collection
      from a task. This is beneficial as it avoids stack scanning which is
      expensive and can keep alive outdated objects in case of unified heap.
      
      Completing will be delayed at most by some overshoot factor (10%).
      
      In addition, the GC keeps the weighted average of previously recorded
      time to incremental marking task invocations and bails out if the
      task is expected to arrive too late.
      
      Reland: Do not schedule a delayed task when marking has already been
      finalized.
      
      This reverts commit 1775684e.
      
      Bug: chromium:1044630, v8:10178
      Change-Id: Ic46e9504ce7c200bd1d37ee8d0190fb8727a3f96
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2037436Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66137}
      562c15d6
  2. 04 Feb, 2020 2 commits
    • Michael Achenbach's avatar
      Revert "heap: Delay completing marking" · 1775684e
      Michael Achenbach authored
      This reverts commit 02e57873.
      
      Reason for revert: High flakiness and broken GPU builders. See:
      https://crbug.com/v8/10178
      (speculative revert)
      
      Original change's description:
      > heap: Delay completing marking
      > 
      > Delay completing marking (and thus the atomic GC pause) during JS
      > executions, increasing the chance to finalize the garbage collection
      > from a task. This is beneficial as it avoids stack scanning which is
      > expensive and can keep alive outdated objects in case of unified heap.
      > 
      > Completing will be delayed at most by some overshoot factor (10%).
      > 
      > In addition, the GC keeps the weighted average of previously recorded
      > time to incremental marking task invocations and bails out if the
      > task is expected to arrive too late.
      > 
      > Bug: chromium:1044630
      > Change-Id: I10e63e6aaa88d8488d4415f311016dce2b4e62a2
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030906
      > Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#66107}
      
      TBR=ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org
      
      Change-Id: I0cd3f1189d0f83754350d5bdaaf82cb3c4d402c8
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:1044630, v8:10178
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2037434Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Michael Achenbach <machenbach@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66120}
      1775684e
    • Michael Lippautz's avatar
      heap: Delay completing marking · 02e57873
      Michael Lippautz authored
      Delay completing marking (and thus the atomic GC pause) during JS
      executions, increasing the chance to finalize the garbage collection
      from a task. This is beneficial as it avoids stack scanning which is
      expensive and can keep alive outdated objects in case of unified heap.
      
      Completing will be delayed at most by some overshoot factor (10%).
      
      In addition, the GC keeps the weighted average of previously recorded
      time to incremental marking task invocations and bails out if the
      task is expected to arrive too late.
      
      Bug: chromium:1044630
      Change-Id: I10e63e6aaa88d8488d4415f311016dce2b4e62a2
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030906
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66107}
      02e57873
  3. 24 May, 2019 1 commit
  4. 07 Feb, 2019 1 commit
    • Ulan Degenbaev's avatar
      [heap] Rework incremental marking scheduling · 4c65986a
      Ulan Degenbaev authored
      The new scheduling reduces the main thread marking performed in
      tasks and on allocation. It is based on two counters:
      - bytes_marked,
      - scheduled_bytes_to_mark.
      
      The bytes_marked accounts marking done both the main thread and
      the concurrent threads. The scheduled_bytes_to_mark increases based
      on allocated bytes and also based on time passed since the start
      of marking. The main thread steps are allowed to mark the minimal
      amount if bytes_marked is greater than scheduled_bytes_to_mark.
      
      This also changes tasks posted for marking. Before only normal
      tasks were posted. Now delayed tasks are posted if the marker is
      ahead of schedule.
      
      Bug: 926189
      
      Change-Id: I5bc9c33a5ecfc9f8d09f78d08ae277d16a2779ca
      Reviewed-on: https://chromium-review.googlesource.com/c/1443056
      Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#59433}
      4c65986a
  5. 10 Oct, 2018 1 commit
  6. 11 Jul, 2017 1 commit
  7. 26 May, 2017 1 commit
  8. 05 Dec, 2016 1 commit
  9. 02 Dec, 2016 1 commit
  10. 12 Sep, 2016 1 commit
  11. 24 Mar, 2016 1 commit
  12. 30 Sep, 2015 1 commit
  13. 08 Sep, 2015 1 commit