QUDA  1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | List of all members
quda::blas::ReduceFunctor< ReduceType, Float2, FloatN > Struct Template Referenceabstract
Inheritance diagram for quda::blas::ReduceFunctor< ReduceType, Float2, FloatN >:
Inheritance graph
[legend]

Public Member Functions

virtual __device__ __host__ void pre ()
 pre-computation routine called before the "M-loop" More...
 
virtual __device__ __host__ __host__ void operator() (ReduceType &sum, FloatN &x, FloatN &y, FloatN &z, FloatN &w, FloatN &v)=0
 where the reduction is usually computed and any auxiliary operations More...
 
virtual __device__ __host__ void post (ReduceType &sum)
 post-computation routine called after the "M-loop" More...
 

Detailed Description

template<typename ReduceType, typename Float2, typename FloatN>
struct quda::blas::ReduceFunctor< ReduceType, Float2, FloatN >

Base class from which all reduction functors should derive.

Definition at line 83 of file reduce_core.cuh.

Member Function Documentation

◆ operator()()

template<typename ReduceType , typename Float2 , typename FloatN >
virtual __device__ __host__ __host__ void quda::blas::ReduceFunctor< ReduceType, Float2, FloatN >::operator() ( ReduceType &  sum,
FloatN &  x,
FloatN &  y,
FloatN &  z,
FloatN &  w,
FloatN &  v 
)
pure virtual

◆ post()

template<typename ReduceType , typename Float2 , typename FloatN >
virtual __device__ __host__ void quda::blas::ReduceFunctor< ReduceType, Float2, FloatN >::post ( ReduceType &  sum)
inlinevirtual

post-computation routine called after the "M-loop"

Reimplemented in quda::blas::xpyHeavyQuarkResidualNorm_< ReduceType, Float2, FloatN >, and quda::blas::HeavyQuarkResidualNorm_< ReduceType, Float2, FloatN >.

Definition at line 94 of file reduce_core.cuh.

◆ pre()

template<typename ReduceType , typename Float2 , typename FloatN >
virtual __device__ __host__ void quda::blas::ReduceFunctor< ReduceType, Float2, FloatN >::pre ( )
inlinevirtual

pre-computation routine called before the "M-loop"

Reimplemented in quda::blas::xpyHeavyQuarkResidualNorm_< ReduceType, Float2, FloatN >, and quda::blas::HeavyQuarkResidualNorm_< ReduceType, Float2, FloatN >.

Definition at line 86 of file reduce_core.cuh.

References quda::sum().

Here is the call graph for this function:

The documentation for this struct was generated from the following file: