From a6ad9e8ccf970a0da68508eb2ce26b316045b9f0 Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Tue, 20 Aug 2019 16:50:57 +0200 Subject: [PATCH] radv: force enable VK_AMD_shader_ballot for Wolfenstein Youngblood This gives a nice boost, +20% at this time on my Vega 56. Shader ballot should be enabled by default at some point but it reduces performance a bit (-6%) with Wolfeinstein II. Enable it only for Youngblood at the moment, like what we did for Talos in the past. As a bonus point, it gets rid of some minor artifacts that only happens when ballot is disabled for some reasons. Cc: 19.2 Reviewed-by: Bas Nieuwenhuizen --- src/amd/vulkan/radv_device.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index f77430d55be..7101567b66a 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -555,6 +555,14 @@ radv_handle_per_app_options(struct radv_instance *instance, */ if (HAVE_LLVM < 0x900) instance->debug_flags |= RADV_DEBUG_NO_LOAD_STORE_OPT; + } else if (!strcmp(name, "Wolfenstein: Youngblood")) { + if (!(instance->debug_flags & RADV_DEBUG_NO_SHADER_BALLOT)) { + /* Force enable VK_AMD_shader_ballot because it looks + * safe and it gives a nice boost (+20% on Vega 56 at + * this time). + */ + instance->perftest_flags |= RADV_PERFTEST_SHADER_BALLOT; + } } } -- 2.30.2