|
| | ReduceCuda (doubleN &result, SpinorX &X, SpinorY &Y, SpinorZ &Z, SpinorW &W, SpinorV &V, Reducer &r, int length, const size_t *bytes, const size_t *norm_bytes) |
| |
| virtual | ~ReduceCuda () |
| |
| TuneKey | tuneKey () const |
| |
| void | apply (const cudaStream_t &stream) |
| |
| void | preTune () |
| |
| void | postTune () |
| |
| long long | flops () const |
| |
| long long | bytes () const |
| |
| int | tuningIter () const |
| |
| | ReduceCuda (doubleN &result, SpinorX &X, SpinorY &Y, SpinorZ &Z, SpinorW &W, SpinorV &V, Reducer &r, int length) |
| |
| virtual | ~ReduceCuda () |
| |
| TuneKey | tuneKey () const |
| |
| void | apply (const cudaStream_t &stream) |
| |
| void | preTune () |
| |
| void | postTune () |
| |
| long long | flops () const |
| |
| long long | bytes () const |
| |
| int | tuningIter () const |
| |
template<typename doubleN, typename ReduceType, typename ReduceSimpleType, typename FloatN, int M, typename SpinorX, typename SpinorY, typename SpinorZ, typename SpinorW, typename SpinorV, typename Reducer>
class ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >
Definition at line 274 of file reduce_core.h.
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::ReduceCuda |
( |
doubleN & |
result, |
|
|
SpinorX & |
X, |
|
|
SpinorY & |
Y, |
|
|
SpinorZ & |
Z, |
|
|
SpinorW & |
W, |
|
|
SpinorV & |
V, |
|
|
Reducer & |
r, |
|
|
int |
length, |
|
|
const size_t * |
bytes, |
|
|
const size_t * |
norm_bytes |
|
) |
| |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| virtual ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::~ReduceCuda |
( |
| ) |
|
|
inlinevirtual |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::ReduceCuda |
( |
doubleN & |
result, |
|
|
SpinorX & |
X, |
|
|
SpinorY & |
Y, |
|
|
SpinorZ & |
Z, |
|
|
SpinorW & |
W, |
|
|
SpinorV & |
V, |
|
|
Reducer & |
r, |
|
|
int |
length |
|
) |
| |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| virtual ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::~ReduceCuda |
( |
| ) |
|
|
inlinevirtual |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| void ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::apply |
( |
const cudaStream_t & |
stream | ) |
|
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| void ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::apply |
( |
const cudaStream_t & |
stream | ) |
|
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| long long ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::bytes |
( |
| ) |
const |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| long long ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::bytes |
( |
| ) |
const |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| long long ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::flops |
( |
| ) |
const |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| long long ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::flops |
( |
| ) |
const |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| void ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::postTune |
( |
| ) |
|
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| void ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::postTune |
( |
| ) |
|
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| void ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::preTune |
( |
| ) |
|
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| void ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::preTune |
( |
| ) |
|
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| TuneKey ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::tuneKey |
( |
| ) |
const |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| TuneKey ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::tuneKey |
( |
| ) |
const |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| int ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::tuningIter |
( |
| ) |
const |
|
inline |
template<typename doubleN , typename ReduceType , typename ReduceSimpleType , typename FloatN , int M, typename SpinorX , typename SpinorY , typename SpinorZ , typename SpinorW , typename SpinorV , typename Reducer >
| int ReduceCuda< doubleN, ReduceType, ReduceSimpleType, FloatN, M, SpinorX, SpinorY, SpinorZ, SpinorW, SpinorV, Reducer >::tuningIter |
( |
| ) |
const |
|
inline |