radv: add RADV_DEBUG=nomeshshader

This option will be used to disable VK_EXT_mesh_shader in Mesa CI
for GFX11 because running task shader tests in parallel can hang the
GPU.

Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10051
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25969>
This commit is contained in:
Samuel Pitoiset
2023-10-31 13:41:37 +01:00
parent 15f92c3b2c
commit a97160cad8
4 changed files with 7 additions and 0 deletions

View File

@@ -1259,6 +1259,8 @@ RADV driver environment variables
disable directly recording command buffers in GPU-visible memory
``nomemorycache``
disable memory shaders cache
``nomeshshader``
disable mesh shader support on GFX10.3+
``nongg``
disable NGG for GFX10 and GFX10.3
``nonggc``

View File

@@ -71,6 +71,7 @@ enum {
RADV_DEBUG_NO_GPL = 1ull << 40,
RADV_DEBUG_VIDEO_ARRAY_PATH = 1ull << 41,
RADV_DEBUG_NO_RT = 1ull << 42,
RADV_DEBUG_NO_MESH_SHADER = 1ull << 43,
};
enum {

View File

@@ -76,6 +76,7 @@ static const struct debug_control radv_debug_options[] = {{"nofastclears", RADV_
{"nogpl", RADV_DEBUG_NO_GPL},
{"videoarraypath", RADV_DEBUG_VIDEO_ARRAY_PATH},
{"nort", RADV_DEBUG_NO_RT},
{"nomeshshader", RADV_DEBUG_NO_MESH_SHADER},
{NULL, 0}};
const char *

View File

@@ -64,6 +64,9 @@ radv_perf_query_supported(const struct radv_physical_device *pdev)
static bool
radv_taskmesh_enabled(const struct radv_physical_device *pdevice)
{
if (pdevice->instance->debug_flags & RADV_DEBUG_NO_MESH_SHADER)
return false;
return pdevice->use_ngg && !pdevice->use_llvm && pdevice->rad_info.gfx_level >= GFX10_3 &&
!(pdevice->instance->debug_flags & RADV_DEBUG_NO_COMPUTE_QUEUE) && pdevice->rad_info.has_gang_submit;
}