cuda::experimental::stf::slice_reduction_op

Defined in include/cuda/experimental/__stf/stream/interfaces/slice_reduction_ops.cuh

template<typename element_type, size_t dimensions, typename ReduxOp>
class slice_reduction_op : public cuda::experimental::stf::stream_reduction_operator<T>, public cuda::experimental::stf::stream_reduction_operator<slice<element_type, dimensions>>

Helper class to define element-wise reduction operators applied to slices.

ReduxOp::init_host(element_type &out); ReduxOp::op_host(const element_type &in, element_type &inout); device ReduxOp::init_gpu(element_type &out); device ReduxOp::op_gpu(const element_type &in, element_type &inout);

Public Types

using instance_t = slice<element_type, dimensions>

Public Functions

slice_reduction_op() = default
inline void op(const instance_t &in, instance_t &inout, const exec_place &e, cudaStream_t s) override

Reconstruct an instance by applying the reduction operator over it and another instance.

inline void init_op(instance_t &out, const exec_place &e, cudaStream_t s) override

Initialize an instance with an appropriate default value for the reduction operator.

inline virtual ~reduction_operator_base()