From 7d356358448ba1155d8c64634fde12feb488cc23 Mon Sep 17 00:00:00 2001 From: Jake Turner Date: Mon, 5 May 2025 10:28:29 +0100 Subject: [PATCH] Only default activate lane zero for SPIRV single threaded compute debug Workgroup and Subgroup compute debug will set lane Active/SubgroupId properties for all threads --- renderdoc/driver/vulkan/vk_shaderdebug.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_shaderdebug.cpp b/renderdoc/driver/vulkan/vk_shaderdebug.cpp index 0b9ea1307..daa6087ef 100644 --- a/renderdoc/driver/vulkan/vk_shaderdebug.cpp +++ b/renderdoc/driver/vulkan/vk_shaderdebug.cpp @@ -5950,9 +5950,6 @@ ShaderDebugTrace *VulkanReplay::DebugComputeCommon(ShaderStage stage, uint32_t e apiWrapper->thread_builtins.resize(numThreads); apiWrapper->thread_props.resize(numThreads); - apiWrapper->thread_props[0][(size_t)rdcspv::ThreadProperty::Active] = 1; - apiWrapper->thread_props[0][(size_t)rdcspv::ThreadProperty::SubgroupId] = 0; - std::unordered_map &global_builtins = apiWrapper->global_builtins; global_builtins[ShaderBuiltin::DispatchSize] = ShaderVariable(rdcstr(), action->dispatchDimension[0], action->dispatchDimension[1], @@ -6313,6 +6310,9 @@ ShaderDebugTrace *VulkanReplay::DebugComputeCommon(ShaderStage stage, uint32_t e else { // simple single-thread case + apiWrapper->thread_props[0][(size_t)rdcspv::ThreadProperty::Active] = 1; + apiWrapper->thread_props[0][(size_t)rdcspv::ThreadProperty::SubgroupId] = 0; + std::unordered_map &thread_builtins = apiWrapper->thread_builtins[0];