radeonsi/gfx11: disable the shader profile for Medical that disables binning
GFX11 performs better with the default behavior. Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26307>
This commit is contained in:
@@ -305,7 +305,7 @@ enum
|
||||
#define SI_PROFILE_GFX10_WAVE64 (1 << 1)
|
||||
/* bit gap */
|
||||
#define SI_PROFILE_VS_NO_BINNING (1 << 3)
|
||||
#define SI_PROFILE_PS_NO_BINNING (1 << 4)
|
||||
#define SI_PROFILE_GFX9_GFX10_PS_NO_BINNING (1 << 4)
|
||||
#define SI_PROFILE_CLAMP_DIV_BY_ZERO (1 << 5)
|
||||
|
||||
enum si_shader_dump_type {
|
||||
|
||||
@@ -26,7 +26,7 @@ static struct si_shader_profile profiles[] =
|
||||
{
|
||||
/* Viewperf/Medical */
|
||||
{0x4dce4331, 0x38f778d5, 0x1b75a717, 0x3e454fb9, 0xeb1527f0},
|
||||
SI_PROFILE_PS_NO_BINNING,
|
||||
SI_PROFILE_GFX9_GFX10_PS_NO_BINNING,
|
||||
},
|
||||
{
|
||||
/* Viewperf/Medical, a shader with a divergent loop doesn't benefit from Wave32,
|
||||
|
||||
@@ -3773,7 +3773,8 @@ static void si_bind_ps_shader(struct pipe_context *ctx, void *state)
|
||||
si_update_vrs_flat_shading(sctx);
|
||||
|
||||
if (sctx->screen->dpbb_allowed) {
|
||||
bool force_off = sel && sel->info.options & SI_PROFILE_PS_NO_BINNING;
|
||||
bool force_off = sel && sel->info.options & SI_PROFILE_GFX9_GFX10_PS_NO_BINNING &&
|
||||
(sctx->gfx_level >= GFX9 && sctx->gfx_level <= GFX10_3);
|
||||
|
||||
if (force_off != sctx->dpbb_force_off_profile_ps) {
|
||||
sctx->dpbb_force_off_profile_ps = force_off;
|
||||
|
||||
Reference in New Issue
Block a user