QUDA  1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
quda::PackArg< Float_, nColor_, nSpin_, spin_project_ > Struct Template Reference
Collaboration diagram for quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >:
Collaboration graph
[legend]

Public Types

typedef Float_ Float
 
typedef mapper< Float >::type real
 
typedef colorspinor_mapper< Float, nSpin, nColor, spin_project, spinor_direct_load >::type F
 

Public Member Functions

 PackArg (void **ghost, const ColorSpinorField &in, int nFace, bool dagger, int parity, int threads, double a, double b, double c)
 

Public Attributes

const F in
 
const int nFace
 
const bool dagger
 
const int parity
 
const int nParity
 
const QudaPCType pc_type
 
const DslashConstant dc
 
real a
 
real b
 
real c
 
int twist
 
int_fastdiv threads
 
int threadDimMapLower [4]
 
int threadDimMapUpper [4]
 
int_fastdiv blocks_per_dir
 
int dim_map [4]
 
int active_dims
 
int_fastdiv swizzle
 
int sites_per_block
 

Static Public Attributes

static constexpr int nColor = nColor_
 
static constexpr int nSpin = nSpin_
 
static constexpr bool spin_project = (nSpin == 4 && spin_project_ ? true : false)
 
static constexpr bool spinor_direct_load = false
 

Detailed Description

template<typename Float_, int nColor_, int nSpin_, bool spin_project_ = true>
struct quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >

Definition at line 11 of file dslash_pack.cuh.

Member Typedef Documentation

◆ F

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
typedef colorspinor_mapper<Float, nSpin, nColor, spin_project, spinor_direct_load>::type quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::F

Definition at line 21 of file dslash_pack.cuh.

◆ Float

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
typedef Float_ quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::Float

Definition at line 13 of file dslash_pack.cuh.

◆ real

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
typedef mapper<Float>::type quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::real

Definition at line 14 of file dslash_pack.cuh.

Constructor & Destructor Documentation

◆ PackArg()

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::PackArg ( void **  ghost,
const ColorSpinorField in,
int  nFace,
bool  dagger,
int  parity,
int  threads,
double  a,
double  b,
double  c 
)
inline

Definition at line 49 of file dslash_pack.cuh.

References errorQuda, quda::ColorSpinorField::FieldOrder(), quda::DslashConstant::ghostFaceCB, and quda::ColorSpinorField::isNative().

Here is the call graph for this function:

Member Data Documentation

◆ a

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
real quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::a

Definition at line 33 of file dslash_pack.cuh.

◆ active_dims

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::active_dims

Definition at line 44 of file dslash_pack.cuh.

◆ b

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
real quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::b

Definition at line 34 of file dslash_pack.cuh.

◆ blocks_per_dir

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int_fastdiv quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::blocks_per_dir

Definition at line 42 of file dslash_pack.cuh.

◆ c

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
real quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::c

Definition at line 35 of file dslash_pack.cuh.

◆ dagger

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
const bool quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::dagger

Definition at line 26 of file dslash_pack.cuh.

Referenced by quda::pack().

◆ dc

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
const DslashConstant quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::dc

Definition at line 31 of file dslash_pack.cuh.

◆ dim_map

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::dim_map[4]

Definition at line 43 of file dslash_pack.cuh.

◆ in

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
const F quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::in

Definition at line 23 of file dslash_pack.cuh.

Referenced by quda::pack(), and quda::packStaggered().

◆ nColor

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
constexpr int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::nColor = nColor_
static

Definition at line 16 of file dslash_pack.cuh.

◆ nFace

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
const int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::nFace

Definition at line 25 of file dslash_pack.cuh.

Referenced by quda::pack(), and quda::packStaggered().

◆ nParity

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
const int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::nParity

Definition at line 28 of file dslash_pack.cuh.

◆ nSpin

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
constexpr int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::nSpin = nSpin_
static

Definition at line 17 of file dslash_pack.cuh.

◆ parity

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
const int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::parity

◆ pc_type

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
const QudaPCType quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::pc_type

Definition at line 29 of file dslash_pack.cuh.

◆ sites_per_block

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::sites_per_block

Definition at line 47 of file dslash_pack.cuh.

Referenced by quda::packKernel(), and quda::packStaggeredKernel().

◆ spin_project

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
constexpr bool quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::spin_project = (nSpin == 4 && spin_project_ ? true : false)
static

Definition at line 19 of file dslash_pack.cuh.

◆ spinor_direct_load

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
constexpr bool quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::spinor_direct_load = false
static

Definition at line 20 of file dslash_pack.cuh.

◆ swizzle

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int_fastdiv quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::swizzle

Definition at line 46 of file dslash_pack.cuh.

◆ threadDimMapLower

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::threadDimMapLower[4]

Definition at line 39 of file dslash_pack.cuh.

◆ threadDimMapUpper

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::threadDimMapUpper[4]

Definition at line 40 of file dslash_pack.cuh.

◆ threads

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int_fastdiv quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::threads

Definition at line 38 of file dslash_pack.cuh.

◆ twist

template<typename Float_ , int nColor_, int nSpin_, bool spin_project_ = true>
int quda::PackArg< Float_, nColor_, nSpin_, spin_project_ >::twist

Definition at line 36 of file dslash_pack.cuh.

Referenced by quda::pack().


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