• Victor Miura's avatar
    Reland "gpu scheduler: Compute stream priorities based on priority of waiters." · 651b0c34
    Victor Miura authored
    This is a reland of 56eadad0
    Original change's description:
    > gpu scheduler: Compute stream priorities based on priority of waiters.
    > 
    > Previously, a stream tracked all of it's fences that had waiting streams
    > in 'release_fences'.  If 'release_fences' was non-empty, the stream's
    > priority got bumped up to High.  This means a stream with Normal priority
    > waiting on Low priority stream could bump that stream up to High priority.
    > 
    > This change removes that tracking, and instead keeps count of the number
    > of waiting streams at each StreamPriority.  The highest priority with non-
    > zero count becomes the stream's priority.
    > 
    > When a stream changes priority, it recursively propagates it's new priority
    > to all streams it's waiting on.
    > 
    > BUG=781585
    > 
    > Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_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
    > Change-Id: I1fc96f6ca065a8e1f83ddaa61ae4f9725c324bcb
    > Reviewed-on: https://chromium-review.googlesource.com/754415
    > Commit-Queue: Victor Miura <vmiura@chromium.org>
    > Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org>
    > Reviewed-by: Antoine Labour <piman@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#515097}
    
    Bug: 781585
    Change-Id: I67055fe2887a8ffcc8032af32ab221a3d66bedac
    Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_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
    Reviewed-on: https://chromium-review.googlesource.com/762145
    Commit-Queue: Victor Miura <vmiura@chromium.org>
    Reviewed-by: default avatarSunny Sachanandani <sunnyps@chromium.org>
    Reviewed-by: default avatarAntoine Labour <piman@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#517702}
    651b0c34
scheduler.cc 18.1 KB