Add vecadd-loop

This is the same kernel as vecadd but repeated in a for-loop many times so that
the runtime overhead at the startup is amortized.
This commit is contained in:
Hansung Kim
2023-10-31 23:32:52 -07:00
parent 6563ed696e
commit 2f4fd11c93
8 changed files with 358 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
__kernel void vecadd (__global const float *A,
__global const float *B,
__global float *C)
{
int gid = get_global_id(0);
float sum = 0.;
for (int i = 0; i < 1000; i++) {
int addr = gid + (i % 2);
sum += A[addr] + B[addr];
}
C[gid] = sum;
}