1. 05 Sep, 2018 1 commit
    • Michael Lippautz's avatar
      Reland "Add external backing store JS test" · 408d8904
      Michael Lippautz authored
      Allow mocking the limits for ArrayBuffer allocation to simulate operating
      system OOM.
      
      Fixes:
      - Ensure OS limit > hard limit for external memory. This is necessary as
        any processing below the hard limit is opportunistic. E.g. a running
        sweeper may stall the current marking (GC) round.
      - Immediately process AB allocations when under memory pressure. Otherwise,
        the allocations may be stuck in a stalled task. Freeing them upon
        adding them to the collector still enables parallelism if possible.
      
      This reverts commit f3ad6cdb.
      
      Bug: chromium:845409
      Change-Id: Ic3e458f2af231bae3d53afcfd6002a0347d3f12b
      Reviewed-on: https://chromium-review.googlesource.com/1206872
      Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55656}
      408d8904
  2. 17 Aug, 2018 1 commit
  3. 14 Jun, 2018 1 commit
  4. 20 Nov, 2017 3 commits
    • Peter Marshall's avatar
      reland: [heap] Concurrently free ArrayBuffer allocations. · d8981833
      Peter Marshall authored
      Free ArrayBuffer backing stores on a background thread, rather than
      blocking the main thread after processing. Could potentially cause
      contention with the array buffer allocator once JS execution resumes.
      
      The new ArrayBufferCollector class tracks these dead allocations.
      
      Later, the processing of array buffers can happen in parallel.
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux64_tsan_rel;master.tryserver.v8:v8_linux64_tsan_concurrent_marking_rel_ng;master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel
      
      Bug: v8:6992
      Change-Id: I2b74f008f79521414374f607ed510f66508af160
      Reviewed-on: https://chromium-review.googlesource.com/779182
      Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49505}
      d8981833
    • Peter Marshall's avatar
      Revert "[heap] Concurrently free ArrayBuffer allocations." · 3b31e5be
      Peter Marshall authored
      This reverts commit b6658ade.
      
      Reason for revert: Breaks TSAN :(
      
      Original change's description:
      > [heap] Concurrently free ArrayBuffer allocations.
      > 
      > Free ArrayBuffer backing stores on a background thread, rather than
      > blocking the main thread after processing. Could potentially cause
      > contention with the array buffer allocator once JS execution resumes.
      > 
      > The new ArrayBufferCollector class tracks these dead allocations.
      > 
      > Later, the processing of array buffers can happen in parallel.
      > 
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > 
      > Bug: v8:6992
      > Change-Id: I49ae4db12ed62d8400ba2bbafeda05a11479d904
      > Reviewed-on: https://chromium-review.googlesource.com/739829
      > Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Reviewed-by: Hannes Payer <hpayer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49485}
      
      TBR=hpayer@chromium.org,mlippautz@chromium.org,petermarshall@chromium.org
      
      Change-Id: If6743b83f871c0fd0d6e83a3083dce0eecd99021
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:6992
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/779159Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
      Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49488}
      3b31e5be
    • Peter Marshall's avatar
      [heap] Concurrently free ArrayBuffer allocations. · b6658ade
      Peter Marshall authored
      Free ArrayBuffer backing stores on a background thread, rather than
      blocking the main thread after processing. Could potentially cause
      contention with the array buffer allocator once JS execution resumes.
      
      The new ArrayBufferCollector class tracks these dead allocations.
      
      Later, the processing of array buffers can happen in parallel.
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      
      Bug: v8:6992
      Change-Id: I49ae4db12ed62d8400ba2bbafeda05a11479d904
      Reviewed-on: https://chromium-review.googlesource.com/739829
      Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49485}
      b6658ade