summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/kernels/opencl.cl27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/kernels/opencl.cl b/src/kernels/opencl.cl
index f71d6fa..ab35011 100644
--- a/src/kernels/opencl.cl
+++ b/src/kernels/opencl.cl
@@ -118,3 +118,30 @@ diff (global float *x,
const size_t idx = get_global_id (1) * get_global_size (0) + get_global_id (0);
output[idx] = x[idx] - y[idx];
}
+
+kernel void
+add (global float *x,
+ global float *y,
+ global float *output)
+{
+ const size_t idx = get_global_id (1) * get_global_size (0) + get_global_id (0);
+ output[idx] = x[idx] + y[idx];
+}
+
+kernel void
+multiply (global float *x,
+ global float *y,
+ global float *output)
+{
+ const size_t idx = get_global_id (1) * get_global_size (0) + get_global_id (0);
+ output[idx] = x[idx] * y[idx];
+}
+
+kernel void
+divide (global float *x,
+ global float *y,
+ global float *output)
+{
+ const size_t idx = get_global_id (1) * get_global_size (0) + get_global_id (0);
+ output[idx] = x[idx] / y[idx];
+}