Stan Math Library  2.20.0
reverse mode automatic differentiation
scalar_mul.hpp
Go to the documentation of this file.
1 #ifndef STAN_MATH_OPENCL_KERNELS_SCALAR_MUL_HPP
2 #define STAN_MATH_OPENCL_KERNELS_SCALAR_MUL_HPP
3 #ifdef STAN_OPENCL
4 
7 
8 namespace stan {
9 namespace math {
10 namespace opencl_kernels {
11 // \cond
12 static const char *scalar_mul_kernel_code = STRINGIFY(
13  // \endcond
23  __kernel void scalar_mul(__global double *A, const __global double *B,
24  const double scalar, const unsigned int rows,
25  const unsigned int cols) {
26  int i = get_global_id(0);
27  int j = get_global_id(1);
28  if (i < rows && j < cols) {
29  A(i, j) = B(i, j) * scalar;
30  }
31  }
32  // \cond
33 );
34 // \endcond
35 
40  "scalar_mul", {indexing_helpers, scalar_mul_kernel_code});
41 
42 } // namespace opencl_kernels
43 } // namespace math
44 } // namespace stan
45 #endif
46 #endif
int rows(const Eigen::Matrix< T, R, C > &m)
Return the number of rows in the specified matrix, vector, or row vector.
Definition: rows.hpp:20
#define STRINGIFY(src)
Definition: kernel_cl.hpp:22
static const char * indexing_helpers
Definition: helpers.hpp:14
const kernel_cl< out_buffer, in_buffer, double, int, int > scalar_mul("scalar_mul", {indexing_helpers, scalar_mul_kernel_code})
See the docs for add() .
int cols(const Eigen::Matrix< T, R, C > &m)
Return the number of columns in the specified matrix, vector, or row vector.
Definition: cols.hpp:20
Creates functor for kernels.
Definition: kernel_cl.hpp:201

     [ Stan Home Page ] © 2011–2018, Stan Development Team.