From 61a125647b7d009ca7800c5ea2d60f3d2e64ea9d Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Thu, 8 Feb 2024 10:42:52 +0100 Subject: [PATCH] radv: add radv_disable_ngg_gs and enable it for Persona 3 Reload Persona 3 Reload is largely affected by the way amplification works with NGG GS and disabling it drastically improve performance. Signed-off-by: Samuel Pitoiset Part-of: --- src/amd/vulkan/radv_instance.c | 4 ++++ src/util/00-radv-defaults.conf | 4 ++++ src/util/driconf.h | 3 +++ 3 files changed, 11 insertions(+) diff --git a/src/amd/vulkan/radv_instance.c b/src/amd/vulkan/radv_instance.c index db9770fd0a1..8c656491672 100644 --- a/src/amd/vulkan/radv_instance.c +++ b/src/amd/vulkan/radv_instance.c @@ -134,6 +134,7 @@ static const driOptionDescription radv_dri_options[] = { DRI_CONF_RADV_NO_DYNAMIC_BOUNDS(false) DRI_CONF_RADV_OVERRIDE_UNIFORM_OFFSET_ALIGNMENT(0) DRI_CONF_RADV_CLEAR_LDS(false) + DRI_CONF_RADV_DISABLE_NGG_GS(false) DRI_CONF_SECTION_END DRI_CONF_SECTION_DEBUG @@ -202,6 +203,9 @@ radv_init_dri_options(struct radv_instance *instance) if (driQueryOptionb(&instance->drirc.options, "radv_disable_dcc")) instance->debug_flags |= RADV_DEBUG_NO_DCC; + if (driQueryOptionb(&instance->drirc.options, "radv_disable_ngg_gs")) + instance->debug_flags |= RADV_DEBUG_NO_NGG_GS; + instance->drirc.clear_lds = driQueryOptionb(&instance->drirc.options, "radv_clear_lds"); instance->drirc.zero_vram = driQueryOptionb(&instance->drirc.options, "radv_zero_vram"); diff --git a/src/util/00-radv-defaults.conf b/src/util/00-radv-defaults.conf index d7e6115c866..525fb5c02a7 100644 --- a/src/util/00-radv-defaults.conf +++ b/src/util/00-radv-defaults.conf @@ -159,6 +159,10 @@ Application bugs worked around in this file: