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}
Showing
This diff is collapsed.
This diff is collapsed.
Please register or sign in to comment