Module: Mesa
Branch: master
Commit: 0737c1e3a603e13ce9764ff5432e332b233c4b9d
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0737c1e3a603e13ce9764ff5432e332b233c4b9d

Author: Samuel Pitoiset <[email protected]>
Date:   Tue Apr 24 17:06:19 2018 +0200

radv: enable out-of-order rasterization by default

As the implementation is conservative, we can now enable it
by default. It can be disabled with RADV_DEBUG=nooutoforder.

Don't expect much more than 1% of improvements, but the gain
seems consistent.

Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>

---

 src/amd/vulkan/radv_debug.h  | 1 +
 src/amd/vulkan/radv_device.c | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/amd/vulkan/radv_debug.h b/src/amd/vulkan/radv_debug.h
index 03f218fcda..9dda9b6b0c 100644
--- a/src/amd/vulkan/radv_debug.h
+++ b/src/amd/vulkan/radv_debug.h
@@ -44,6 +44,7 @@ enum {
        RADV_DEBUG_NO_SISCHED        = 0x4000,
        RADV_DEBUG_PREOPTIR          = 0x8000,
        RADV_DEBUG_NO_DYNAMIC_BOUNDS = 0x10000,
+       RADV_DEBUG_NO_OUT_OF_ORDER   = 0x20000,
 };
 
 enum {
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 629957afec..ef32c37464 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -315,7 +315,7 @@ radv_physical_device_init(struct radv_physical_device 
*device,
        device->has_out_of_order_rast = device->rad_info.chip_class >= VI &&
                                        device->rad_info.max_se >= 2;
        device->out_of_order_rast_allowed = device->has_out_of_order_rast &&
-                                           (device->instance->perftest_flags & 
RADV_PERFTEST_OUT_OF_ORDER);
+                                           !(device->instance->debug_flags & 
RADV_DEBUG_NO_OUT_OF_ORDER);
 
        device->dcc_msaa_allowed = device->rad_info.chip_class == VI &&
                                   (device->instance->perftest_flags & 
RADV_PERFTEST_DCC_MSAA);
@@ -390,6 +390,7 @@ static const struct debug_control radv_debug_options[] = {
        {"nosisched", RADV_DEBUG_NO_SISCHED},
        {"preoptir", RADV_DEBUG_PREOPTIR},
        {"nodynamicbounds", RADV_DEBUG_NO_DYNAMIC_BOUNDS},
+       {"nooutoforder", RADV_DEBUG_NO_OUT_OF_ORDER},
        {NULL, 0}
 };
 
@@ -405,7 +406,6 @@ static const struct debug_control radv_perftest_options[] = 
{
        {"sisched", RADV_PERFTEST_SISCHED},
        {"localbos", RADV_PERFTEST_LOCAL_BOS},
        {"binning", RADV_PERFTEST_BINNING},
-       {"outoforderrast", RADV_PERFTEST_OUT_OF_ORDER},
        {"dccmsaa", RADV_PERFTEST_DCC_MSAA},
        {NULL, 0}
 };

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to