From: Samuel Pitoiset Date: Tue, 24 Apr 2018 15:06:19 +0000 (+0200) Subject: radv: enable out-of-order rasterization by default X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0737c1e3a603e13ce9764ff5432e332b233c4b9d;p=mesa.git 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 Reviewed-by: Bas Nieuwenhuizen --- diff --git a/src/amd/vulkan/radv_debug.h b/src/amd/vulkan/radv_debug.h index 03f218fcda8..9dda9b6b0c2 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 629957afec2..ef32c37464a 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} };