Files
gpgpu-two/shaders/A2Task1Interleaved.comp

24 lines
474 B
Plaintext

#version 450
/* built in:
in uvec3 gl_NumWorkGroups;
in uvec3 gl_WorkGroupID;
in uvec3 gl_LocalInvocationID;
in uvec3 gl_GlobalInvocationID;
in uint gl_LocalInvocationIndex;
*/
layout(local_size_x_id = 0, local_size_y = 1, local_size_z = 1) in;
layout(push_constant) uniform PushStruct {
uint size;
uint stride;
}p;
layout(binding = 0) buffer inoutBufer {uint v[];};
void main() {
uint idx = gl_GlobalInvocationID.x;
v[idx] += v[idx + p.stride];
}