|
QUDA
0.9.0
|
#include <texture.h>


Public Member Functions | |
| SpinorTexture () | |
| SpinorTexture (const ColorSpinorField &x, int nFace=1) | |
| SpinorTexture (const SpinorTexture &st) | |
| SpinorTexture & | operator= (const SpinorTexture &src) |
| void | set (const cudaColorSpinorField &x, int nFace=1) |
| virtual | ~SpinorTexture () |
| __device__ void | load (RegType x[], const int i, const int parity=0) |
| __device__ void | loadGhost (RegType x[], const int i, const int dim) |
| QudaPrecision | Precision () const |
| int | Stride () const |
| int | Bytes () const |
Protected Attributes | |
| StoreType * | spinor |
| StoreType * | ghost_spinor |
| Texture< InterType, StoreType, tex_id > | tex |
| Texture< InterType, StoreType, -1 > | ghostTex |
| float * | norm |
| int | stride |
| unsigned int | cb_offset |
| unsigned int | cb_norm_offset |
| int | ghost_stride [4] |
Private Types | |
| typedef bridge_mapper< RegType, StoreType >::type | InterType |
| RegType | Register type used in kernel |
| InterType | Intermediate format - RegType precision with StoreType ordering |
| StoreType | Type used to store field in memory |
| N | Length of vector of RegType elements that this Spinor represents |
| tex_id | Which texture reference are we using. A default of -1 disables textures on architectures that don't support texture objects. |
|
private |
|
inline |
|
inline |
Definition at line 350 of file texture.h.
References d, SpinorTexture< RegType, StoreType, N, tex_id >::ghost_stride, and x.
|
inline |
Definition at line 366 of file texture.h.
References d, and SpinorTexture< RegType, StoreType, N, tex_id >::ghost_stride.
|
inlinevirtual |
|
inline |
|
inline |
Definition at line 419 of file texture.h.
References SpinorTexture< RegType, StoreType, N, tex_id >::cb_norm_offset, SpinorTexture< RegType, StoreType, N, tex_id >::cb_offset, copyFloatN(), fused_exterior_ndeg_tm_dslash_cuda_gen::i, MAX_TEX_ID, SpinorTexture< RegType, StoreType, N, tex_id >::norm, parity, SpinorTexture< RegType, StoreType, N, tex_id >::spinor, SpinorTexture< RegType, StoreType, N, tex_id >::stride, SpinorTexture< RegType, StoreType, N, tex_id >::tex, value, x, and y.

|
inline |
Load the ghost spinor. For Wilson fermions, we assume that the ghost is spin projected
Definition at line 463 of file texture.h.
References copyFloatN(), dim, SpinorTexture< RegType, StoreType, N, tex_id >::ghost_spinor, SpinorTexture< RegType, StoreType, N, tex_id >::ghost_stride, SpinorTexture< RegType, StoreType, N, tex_id >::ghostTex, fused_exterior_ndeg_tm_dslash_cuda_gen::i, MAX_TEX_ID, SpinorTexture< RegType, StoreType, N, tex_id >::norm, Nspin, value, x, and y.

|
inline |
Definition at line 378 of file texture.h.
References SpinorTexture< RegType, StoreType, N, tex_id >::cb_norm_offset, SpinorTexture< RegType, StoreType, N, tex_id >::cb_offset, d, SpinorTexture< RegType, StoreType, N, tex_id >::ghost_spinor, SpinorTexture< RegType, StoreType, N, tex_id >::ghost_stride, SpinorTexture< RegType, StoreType, N, tex_id >::ghostTex, SpinorTexture< RegType, StoreType, N, tex_id >::norm, SpinorTexture< RegType, StoreType, N, tex_id >::spinor, src, SpinorTexture< RegType, StoreType, N, tex_id >::stride, and SpinorTexture< RegType, StoreType, N, tex_id >::tex.
Referenced by Spinor< RegType, StoreType, N, write, tex_id >::operator=().

|
inline |
Definition at line 506 of file texture.h.
References errorQuda, QUDA_DOUBLE_PRECISION, QUDA_HALF_PRECISION, QUDA_INVALID_PRECISION, QUDA_SINGLE_PRECISION, and x.
|
inline |
Definition at line 397 of file texture.h.
References SpinorTexture< RegType, StoreType, N, tex_id >::cb_norm_offset, SpinorTexture< RegType, StoreType, N, tex_id >::cb_offset, d, float, SpinorTexture< RegType, StoreType, N, tex_id >::ghost_spinor, SpinorTexture< RegType, StoreType, N, tex_id >::ghost_stride, SpinorTexture< RegType, StoreType, N, tex_id >::ghostTex, SpinorTexture< RegType, StoreType, N, tex_id >::norm, SpinorTexture< RegType, StoreType, N, tex_id >::spinor, SpinorTexture< RegType, StoreType, N, tex_id >::stride, SpinorTexture< RegType, StoreType, N, tex_id >::tex, and x.
Referenced by Spinor< RegType, StoreType, N, write, tex_id >::set().

|
inline |
Definition at line 515 of file texture.h.
References SpinorTexture< RegType, StoreType, N, tex_id >::stride.
|
protected |
|
protected |
|
protected |
Definition at line 329 of file texture.h.
Referenced by SpinorTexture< RegType, StoreType, N, tex_id >::loadGhost(), SpinorTexture< RegType, StoreType, N, tex_id >::operator=(), Spinor< RegType, StoreType, N, write, tex_id >::operator=(), SpinorTexture< RegType, StoreType, N, tex_id >::set(), and Spinor< RegType, StoreType, N, write, tex_id >::set().
|
protected |
Definition at line 339 of file texture.h.
Referenced by SpinorTexture< RegType, StoreType, N, tex_id >::loadGhost(), SpinorTexture< RegType, StoreType, N, tex_id >::operator=(), SpinorTexture< RegType, StoreType, N, tex_id >::set(), and SpinorTexture< RegType, StoreType, N, tex_id >::SpinorTexture().
|
protected |
Definition at line 331 of file texture.h.
Referenced by SpinorTexture< RegType, StoreType, N, tex_id >::loadGhost(), SpinorTexture< RegType, StoreType, N, tex_id >::operator=(), and SpinorTexture< RegType, StoreType, N, tex_id >::set().
|
protected |
Definition at line 333 of file texture.h.
Referenced by Spinor< RegType, StoreType, N, write, tex_id >::backup(), SpinorTexture< RegType, StoreType, N, tex_id >::load(), SpinorTexture< RegType, StoreType, N, tex_id >::loadGhost(), Spinor< RegType, StoreType, N, write, tex_id >::Norm(), SpinorTexture< RegType, StoreType, N, tex_id >::operator=(), Spinor< RegType, StoreType, N, write, tex_id >::restore(), Spinor< RegType, StoreType, N, write, tex_id >::save(), and SpinorTexture< RegType, StoreType, N, tex_id >::set().
|
protected |
Definition at line 328 of file texture.h.
Referenced by SpinorTexture< RegType, StoreType, N, tex_id >::load(), SpinorTexture< RegType, StoreType, N, tex_id >::operator=(), Spinor< RegType, StoreType, N, write, tex_id >::operator=(), SpinorTexture< RegType, StoreType, N, tex_id >::set(), and Spinor< RegType, StoreType, N, write, tex_id >::set().
|
protected |
Definition at line 335 of file texture.h.
Referenced by SpinorTexture< RegType, StoreType, N, tex_id >::load(), SpinorTexture< RegType, StoreType, N, tex_id >::operator=(), Spinor< RegType, StoreType, N, write, tex_id >::save(), SpinorTexture< RegType, StoreType, N, tex_id >::set(), and SpinorTexture< RegType, StoreType, N, tex_id >::Stride().
|
protected |
Definition at line 330 of file texture.h.
Referenced by SpinorTexture< RegType, StoreType, N, tex_id >::load(), SpinorTexture< RegType, StoreType, N, tex_id >::operator=(), and SpinorTexture< RegType, StoreType, N, tex_id >::set().
1.8.14