35 #ifndef __BC_INHOM_DIRICHLET_KERNEL__
36 #define __BC_INHOM_DIRICHLET_KERNEL__
41 template<
typename T >
46 const T * __restrict__ bla_x,
47 const T * __restrict__ bla_y,
48 const T * __restrict__ bla_z,
51 const int idx = blockIdx.x * blockDim.x + threadIdx.x;
52 const int str = blockDim.x * gridDim.x;
54 for (
int i = idx;
i < m;
i += str) {
55 const int k = msk[
i + 1] - 1;
65 template<
typename T >
68 const T * __restrict__ bla_x,
71 const int idx = blockIdx.x * blockDim.x + threadIdx.x;
72 const int str = blockDim.x * gridDim.x;
74 for (
int i = idx;
i < m;
i += str) {
75 const int k = msk[
i + 1] - 1;
__global__ void const T *__restrict__ x
__global__ void inhom_dirichlet_apply_scalar_kernel(const int *__restrict__ msk, T *__restrict__ x, const T *__restrict__ bla_x, const int m)
__global__ void inhom_dirichlet_apply_vector_kernel(const int *__restrict__ msk, T *__restrict__ x, T *__restrict__ y, T *__restrict__ z, const T *__restrict__ bla_x, const T *__restrict__ bla_y, const T *__restrict__ bla_z, const int m)