• Gabriel Charette's avatar
    Revert "v8::ItemParallelJob : Do not launch more Tasks than there are Items to process." · 2407b2bd
    Gabriel Charette authored
    This reverts commit 8a27c7d3.
    
    Reason for revert: 
    
    Having more tasks then work items is intentional in some use cases, i.e. Scavenging where RunInParallel() does parallel processing on a dynamic workload *after* the initial set of work items:
    
        {
          barrier_->Start();
          TimedScope scope(&scavenging_time);
          PageScavengingItem* item = nullptr;
          while ((item = GetItem<PageScavengingItem>()) != nullptr) {
            item->Process(scavenger_);
            item->MarkFinished();
          }
          do {
            scavenger_->Process(barrier_);
          } while (!barrier_->Wait());
          scavenger_->Process();
        }
    
    Original change's description:
    > v8::ItemParallelJob : Do not launch more Tasks than there are Items to process.
    > 
    > Except when there are 0 items. For some reason I don't quite understand yet, not
    > calling Run() on tasks_[0] when there are 0 items results in DCHECKs...
    > 
    > Bug: chromium:806237
    > Change-Id: I38c8fffde64a42f93f4efda492832651137eebd7
    > Reviewed-on: https://chromium-review.googlesource.com/888704
    > Commit-Queue: Gabriel Charette <gab@chromium.org>
    > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#50924}
    
    TBR=gab@chromium.org,mlippautz@chromium.org
    
    Change-Id: Iad2ab16bb41f339de8e3fbca1c08c5d26b8a0111
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: chromium:806237
    Reviewed-on: https://chromium-review.googlesource.com/891186Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Gabriel Charette <gab@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#50928}
    2407b2bd
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
docs Loading commit data...
gni Loading commit data...
gypfiles Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...