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; | |
} |