summaryrefslogtreecommitdiffstats
path: root/src/amd/vulkan/radv_private.h
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2018-03-28 19:03:00 +0200
committerSamuel Pitoiset <[email protected]>2018-04-04 13:32:00 +0200
commit922cd38172b8a2bc286bd082fde9cad4e278765b (patch)
tree592c01b33351cac101b1cd21361a7d9f87662ed2 /src/amd/vulkan/radv_private.h
parentd6709c91a63cd3f43a2acedb9a2775e4cd8c79cc (diff)
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 <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_private.h')
-rw-r--r--src/amd/vulkan/radv_private.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h
index a5cbad6cfe0..4485efaa097 100644
--- a/src/amd/vulkan/radv_private.h
+++ b/src/amd/vulkan/radv_private.h
@@ -291,6 +291,9 @@ struct radv_physical_device {
bool cpdma_prefetch_writes_memory;
bool has_scissor_bug;
+ bool has_out_of_order_rast;
+ bool out_of_order_rast_allowed;
+
/* This is the drivers on-disk cache used as a fallback as opposed to
* the pipeline cache defined by apps.
*/
@@ -1232,6 +1235,7 @@ struct radv_pipeline {
struct radv_prim_vertex_count prim_vertex_count;
bool can_use_guardband;
uint32_t needed_dynamic_state;
+ bool disable_out_of_order_rast_for_occlusion;
} graphics;
};