enable chromium_experimental_subgroups; | |
@group(0) @binding(0) var<storage, read_write> output : array<u32>; | |
struct ComputeInputs { | |
@builtin(subgroup_invocation_id) | |
subgroup_invocation_id : u32, | |
@builtin(subgroup_size) | |
subgroup_size : u32, | |
} | |
@compute @workgroup_size(1) | |
fn main(inputs : ComputeInputs) { | |
output[inputs.subgroup_invocation_id] = inputs.subgroup_size; | |
} |