diff --git a/src/amd/ci/gitlab-ci.yml b/src/amd/ci/gitlab-ci.yml index ecbdf40697a..0a8fd6c5a59 100644 --- a/src/amd/ci/gitlab-ci.yml +++ b/src/amd/ci/gitlab-ci.yml @@ -265,7 +265,7 @@ radeonsi-raven-va:amd64: - .deqp-test-valve variables: DEQP_VER: vk - RADV_PERFTEST: nv_ms,ext_ms + RADV_PERFTEST: nv_ms # VKCTS never finishes on gfx7 due to all the GPU resets and hangs. # Hence, disable it for now. diff --git a/src/amd/ci/radv-skips.txt b/src/amd/ci/radv-skips.txt index b7fd449ceaa..14b01d9f325 100644 --- a/src/amd/ci/radv-skips.txt +++ b/src/amd/ci/radv-skips.txt @@ -50,10 +50,3 @@ dEQP-VK.graphicsfuzz.while-inside-switch dEQP-VK.graphicsfuzz.spv-stable-maze-O-dead-code dEQP-VK.graphicsfuzz.spv-stable-maze-O-memory-accesses dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_32struct_to_16struct.uniform_buffer_block_geom - -# These tests create an ACE cmdbuf which waits for GFX, thus can cause -# a deadlock when executed in parallel without gang submit. -dEQP-VK.mesh_shader.nv.synchronization.* -dEQP-VK.mesh_shader.ext.synchronization.* -dEQP-VK.mesh_shader.nv.misc.many_task* -dEQP-VK.mesh_shader.ext.misc.many_task* diff --git a/src/amd/vulkan/radv_debug.h b/src/amd/vulkan/radv_debug.h index 68596254ee6..7ac385370b1 100644 --- a/src/amd/vulkan/radv_debug.h +++ b/src/amd/vulkan/radv_debug.h @@ -85,8 +85,7 @@ enum { RADV_PERFTEST_NV_MS = 1u << 11, RADV_PERFTEST_RT_WAVE_64 = 1u << 12, RADV_PERFTEST_GPL = 1u << 13, - RADV_PERFTEST_EXT_MS = 1u << 14, - RADV_PERFTEST_NGG_STREAMOUT = 1u << 15, + RADV_PERFTEST_NGG_STREAMOUT = 1u << 14, }; bool radv_init_trace(struct radv_device *device); diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index d56fe12aae1..d5d77a2d910 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -413,7 +413,10 @@ radv_vrs_attachment_enabled(const struct radv_physical_device *pdevice) static bool radv_taskmesh_enabled(const struct radv_physical_device *pdevice) { - return false; + /* TODO: implement task/mesh on GFX11 */ + return pdevice->use_ngg && !pdevice->use_llvm && pdevice->rad_info.gfx_level == GFX10_3 && + !(pdevice->instance->debug_flags & (RADV_DEBUG_NO_COMPUTE_QUEUE | RADV_DEBUG_NO_IBS)) && + pdevice->rad_info.has_gang_submit; } static bool @@ -600,8 +603,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device .EXT_load_store_op_none = true, .EXT_memory_budget = true, .EXT_memory_priority = true, - .EXT_mesh_shader = - radv_taskmesh_enabled(device) && device->instance->perftest_flags & RADV_PERFTEST_EXT_MS, + .EXT_mesh_shader = radv_taskmesh_enabled(device), .EXT_multi_draw = true, .EXT_mutable_descriptor_type = true, /* Trivial promotion from VALVE. */ .EXT_non_seamless_cube_map = true, @@ -1099,7 +1101,6 @@ static const struct debug_control radv_perftest_options[] = {{"localbos", RADV_P {"nv_ms", RADV_PERFTEST_NV_MS}, {"rtwave64", RADV_PERFTEST_RT_WAVE_64}, {"gpl", RADV_PERFTEST_GPL}, - {"ext_ms", RADV_PERFTEST_EXT_MS}, {"ngg_streamout", RADV_PERFTEST_NGG_STREAMOUT}, {NULL, 0}};