From 0cc8cded0cb3b751251007814ca574f29dacb2cb Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 20 Feb 2025 17:56:18 +0000 Subject: [PATCH] Only simulate multiple threads with config option enabled --- renderdoc/driver/vulkan/vk_shaderdebug.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/renderdoc/driver/vulkan/vk_shaderdebug.cpp b/renderdoc/driver/vulkan/vk_shaderdebug.cpp index 1274abc88..692422f8d 100644 --- a/renderdoc/driver/vulkan/vk_shaderdebug.cpp +++ b/renderdoc/driver/vulkan/vk_shaderdebug.cpp @@ -39,6 +39,7 @@ RDOC_CONFIG(rdcstr, Vulkan_Debug_PSDebugDumpDirPath, "", "Path to dump shader debugging generated SPIR-V files."); RDOC_CONFIG(bool, Vulkan_Debug_ShaderDebugLogging, false, "Output verbose debug logging messages when debugging shaders."); +RDOC_EXTERN_CONFIG(bool, Vulkan_Hack_EnableGroupCaps); // needed for old linux compilers namespace std @@ -5918,7 +5919,10 @@ ShaderDebugTrace *VulkanReplay::DebugComputeCommon(ShaderStage stage, uint32_t e if(shadRefl.patchData.threadScope & rdcspv::ThreadScope::Subgroup) numThreads = RDCMAX(numThreads, maxSubgroupSize); if(shadRefl.patchData.threadScope & rdcspv::ThreadScope::Workgroup) - numThreads = RDCMAX(numThreads, threadDim[0] * threadDim[1] * threadDim[2]); + { + if(Vulkan_Hack_EnableGroupCaps()) + numThreads = RDCMAX(numThreads, threadDim[0] * threadDim[1] * threadDim[2]); + } apiWrapper->thread_builtins.resize(numThreads); apiWrapper->thread_props.resize(numThreads);