From: Chris Duncan Date: Tue, 22 Apr 2025 21:17:11 +0000 (-0700) Subject: Reduce workgroup size to 64 and update comments with reasoning. X-Git-Url: https://zoso.dev/?a=commitdiff_plain;h=4646ec891cf97c367e094477227188428e62c255;p=nano-pow.git Reduce workgroup size to 64 and update comments with reasoning. --- diff --git a/src/lib/gpu/compute.wgsl b/src/lib/gpu/compute.wgsl index ba14501..e06df02 100644 --- a/src/lib/gpu/compute.wgsl +++ b/src/lib/gpu/compute.wgsl @@ -139,13 +139,12 @@ var m4: vec2; /** * Search compute function -* Calls main with a workgroup size of 96 which in testing was the lowest value -* that would saturate the GPU active thread count and warp occupancy which -* provides a decent balance with the power-sensitive requirements of mobile +* Calls main with a workgroup size of 64 which balances warps between NVIDIA and +* AMD cards while still considering the power-sensitive requirements of mobile * devices. The entire workgroup exits immediately if a nonce was already found * by a previous workgroup. */ -@compute @workgroup_size(96) +@compute @workgroup_size(64) fn search(@builtin(global_invocation_id) global_id: vec3, @builtin(local_invocation_id) local_id: vec3) { if (local_id.x == 0u) { found = atomicLoad(&work.found) != 0u;