radv: implement out-of-order rasterization when it's safe on VI+
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 28 Mar 2018 17:03:00 +0000 (19:03 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 4 Apr 2018 11:32:00 +0000 (13:32 +0200)
commit922cd38172b8a2bc286bd082fde9cad4e278765b
tree592c01b33351cac101b1cd21361a7d9f87662ed2
parentd6709c91a63cd3f43a2acedb9a2775e4cd8c79cc
radv: implement out-of-order rasterization when it's safe on VI+

Disabled by default for now, it can be enabled with
RADV_PERFTEST=outoforder.

No CTS regressions on Polaris, and all Vulkan games I tested
look good as well.

Expect small performance improvements for applications where
out-of-order rasterization can be enabled by the driver.

Loosely based on RadeonSI.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_cmd_buffer.c
src/amd/vulkan/radv_debug.h
src/amd/vulkan/radv_device.c
src/amd/vulkan/radv_extensions.py
src/amd/vulkan/radv_pipeline.c
src/amd/vulkan/radv_private.h