radeonsi/gfx11: disable the shader profile for Medical that forces Wave64

GFX10 should keep using it, but not GFX11.

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:
Marek Olšák 2023-11-24 17:49:26 -05:00 committed by Marge Bot
parent 65b3b0b355
commit f85488824e
3 changed files with 4 additions and 3 deletions

View file

@ -302,7 +302,7 @@ enum
#define SI_NGG_CULL_GET_CLIP_PLANE_ENABLE(x) (((x) >> 5) & 0xff)
#define SI_PROFILE_WAVE32 (1 << 0)
#define SI_PROFILE_WAVE64 (1 << 1)
#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)

View file

@ -33,7 +33,7 @@ static struct si_shader_profile profiles[] =
* probably due to interpolation performance.
*/
{0x29f0f4a0, 0x0672258d, 0x47ccdcfd, 0x31e67dcc, 0xdcb1fda8},
SI_PROFILE_WAVE64,
SI_PROFILE_GFX10_WAVE64,
},
{
/* Viewperf/Creo */

View file

@ -67,7 +67,8 @@ unsigned si_determine_wave_size(struct si_screen *sscreen, struct si_shader *sha
if (info && info->options & SI_PROFILE_WAVE32)
profile_wave_size = 32;
if (info && info->options & SI_PROFILE_WAVE64) {
if (info && info->options & SI_PROFILE_GFX10_WAVE64 &&
(sscreen->info.gfx_level == GFX10 || sscreen->info.gfx_level == GFX10_3)) {
assert(!profile_wave_size);
profile_wave_size = 64;
}