24 #ifndef TILEDARRAY_CUDA_REDUCE_KERNEL_H__INCLUDED
25 #define TILEDARRAY_CUDA_REDUCE_KERNEL_H__INCLUDED
27 #include <TiledArray/config.h>
29 #ifdef TILEDARRAY_HAS_CUDA
34 int product_cuda_kernel(
const int *arg, std::size_t n, cudaStream_t stream,
37 float product_cuda_kernel(
const float *arg, std::size_t n, cudaStream_t stream,
40 double product_cuda_kernel(
const double *arg, std::size_t n,
41 cudaStream_t stream,
int device_id);
44 int sum_cuda_kernel(
const int *arg, std::size_t n, cudaStream_t stream,
47 float sum_cuda_kernel(
const float *arg, std::size_t n, cudaStream_t stream,
50 double sum_cuda_kernel(
const double *arg, std::size_t n, cudaStream_t stream,
54 int max_cuda_kernel(
const int *arg, std::size_t n, cudaStream_t stream,
57 float max_cuda_kernel(
const float *arg, std::size_t n, cudaStream_t stream,
60 double max_cuda_kernel(
const double *arg, std::size_t n, cudaStream_t stream,
64 int min_cuda_kernel(
const int *arg, std::size_t n, cudaStream_t stream,
67 float min_cuda_kernel(
const float *arg, std::size_t n, cudaStream_t stream,
70 double min_cuda_kernel(
const double *arg, std::size_t n, cudaStream_t stream,
74 int absmax_cuda_kernel(
const int *arg, std::size_t n, cudaStream_t stream,
77 float absmax_cuda_kernel(
const float *arg, std::size_t n, cudaStream_t stream,
80 double absmax_cuda_kernel(
const double *arg, std::size_t n, cudaStream_t stream,
84 int absmin_cuda_kernel(
const int *arg, std::size_t n, cudaStream_t stream,
87 float absmin_cuda_kernel(
const float *arg, std::size_t n, cudaStream_t stream,
90 double absmin_cuda_kernel(
const double *arg, std::size_t n, cudaStream_t stream,
95 #endif // TILEDARRAY_HAS_CUDA
97 #endif // TILEDARRAY_CUDA_REDUCE_KERNEL_H__INCLUDED