summaryrefslogtreecommitdiff
path: root/src/kernels/level1/xscal.opencl
diff options
context:
space:
mode:
authorCedric Nugteren <web@cedricnugteren.nl>2016-08-20 12:50:31 +0200
committerCedric Nugteren <web@cedricnugteren.nl>2016-08-20 12:50:31 +0200
commit6eca53ee235e8105a2822f725beb23d4ab7a7bd6 (patch)
tree03c49539feb9b34d149714a49a2f35292cf7f29a /src/kernels/level1/xscal.opencl
parent1ec21421d7dedd715badbc7cf8f555d3b76a022b (diff)
parent57f1aa76857cf0566e05b43b9b2a98a3a6139c8b (diff)
Merge branch 'master' of https://github.com/dvasschemacq/CLBlast into dvasschemacq-master
Conflicts: src/kernels/level1/xaxpy.opencl src/kernels/level2/xgemv.opencl src/kernels/level2/xgemv_fast.opencl src/kernels/level2/xger.opencl src/kernels/level2/xher.opencl src/kernels/level2/xher2.opencl src/kernels/level3/xgemm_part2.opencl
Diffstat (limited to 'src/kernels/level1/xscal.opencl')
-rw-r--r--src/kernels/level1/xscal.opencl15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/kernels/level1/xscal.opencl b/src/kernels/level1/xscal.opencl
index 59936776..3da9c2fd 100644
--- a/src/kernels/level1/xscal.opencl
+++ b/src/kernels/level1/xscal.opencl
@@ -22,9 +22,10 @@ R"(
// =================================================================================================
// Full version of the kernel with offsets and strided accesses
-__attribute__((reqd_work_group_size(WGS, 1, 1)))
-__kernel void Xscal(const int n, const real alpha,
- __global real* xgm, const int x_offset, const int x_inc) {
+__kernel __attribute__((reqd_work_group_size(WGS, 1, 1)))
+void Xscal(const int n, const real_arg arg_alpha,
+ __global real* xgm, const int x_offset, const int x_inc) {
+ const real alpha = GetRealArg(arg_alpha);
// Loops over the work that needs to be done (allows for an arbitrary number of threads)
#pragma unroll
@@ -40,9 +41,11 @@ __kernel void Xscal(const int n, const real alpha,
// Faster version of the kernel without offsets and strided accesses. Also assumes that 'n' is
// dividable by 'VW', 'WGS' and 'WPT'.
-__attribute__((reqd_work_group_size(WGS, 1, 1)))
-__kernel void XscalFast(const int n, const real alpha,
- __global realV* xgm) {
+__kernel __attribute__((reqd_work_group_size(WGS, 1, 1)))
+void XscalFast(const int n, const real_arg arg_alpha,
+ __global realV* xgm) {
+ const real alpha = GetRealArg(arg_alpha);
+
#pragma unroll
for (int w=0; w<WPT; ++w) {
const int id = w*get_global_size(0) + get_global_id(0);