QUDA  v0.5.0
A library for QCD on GPUs
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | List of all members
SpaceColorSpinorOrder< Float, Ns, Nc > Struct Template Reference

#include <pack_spinor.h>

Public Member Functions

 SpaceColorSpinorOrder (Float *field, int volume, int stride)
 
virtual ~SpaceColorSpinorOrder ()
 
__device__ __host__ void load (Float v[Ns *Nc *2], int x, int volume) const
 
__device__ __host__ void save (const Float v[Ns *Nc *2], int x, int volume)
 
size_t Bytes () const
 
template<>
__host__ __device__ void load (float v[24], int x, int volume) const
 
template<>
__host__ __device__ void save (const float v[24], int x, int volume)
 

Public Attributes

Floatfield
 
int volume
 
int stride
 

Detailed Description

template<typename Float, int Ns, int Nc>
struct SpaceColorSpinorOrder< Float, Ns, Nc >

Definition at line 101 of file pack_spinor.h.

Constructor & Destructor Documentation

template<typename Float, int Ns, int Nc>
SpaceColorSpinorOrder< Float, Ns, Nc >::SpaceColorSpinorOrder ( Float field,
int  volume,
int  stride 
)
inline

Definition at line 105 of file pack_spinor.h.

template<typename Float, int Ns, int Nc>
virtual SpaceColorSpinorOrder< Float, Ns, Nc >::~SpaceColorSpinorOrder ( )
inlinevirtual

Definition at line 108 of file pack_spinor.h.

Member Function Documentation

template<typename Float, int Ns, int Nc>
size_t SpaceColorSpinorOrder< Float, Ns, Nc >::Bytes ( ) const
inline

Definition at line 130 of file pack_spinor.h.

template<typename Float, int Ns, int Nc>
__device__ __host__ void SpaceColorSpinorOrder< Float, Ns, Nc >::load ( Float  v[Ns *Nc *2],
int  x,
int  volume 
) const
inline

Definition at line 110 of file pack_spinor.h.

template<>
__host__ __device__ void SpaceColorSpinorOrder< float, 4, 3 >::load ( float  v[24],
int  x,
int  volume 
) const
inline

! float load specialization to obtain full coalescing.

Definition at line 204 of file pack_spinor.h.

template<typename Float, int Ns, int Nc>
__device__ __host__ void SpaceColorSpinorOrder< Float, Ns, Nc >::save ( const Float  v[Ns *Nc *2],
int  x,
int  volume 
)
inline

Definition at line 120 of file pack_spinor.h.

template<>
__host__ __device__ void SpaceColorSpinorOrder< float, 4, 3 >::save ( const float  v[24],
int  x,
int  volume 
)
inline

! float save specialization to obtain full coalescing.

Definition at line 221 of file pack_spinor.h.

Member Data Documentation

template<typename Float, int Ns, int Nc>
Float* SpaceColorSpinorOrder< Float, Ns, Nc >::field

Definition at line 102 of file pack_spinor.h.

template<typename Float, int Ns, int Nc>
int SpaceColorSpinorOrder< Float, Ns, Nc >::stride

Definition at line 104 of file pack_spinor.h.

template<typename Float, int Ns, int Nc>
int SpaceColorSpinorOrder< Float, Ns, Nc >::volume

Definition at line 103 of file pack_spinor.h.


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