QUDA  v0.5.0
A library for QCD on GPUs
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Macros | Functions | Variables
llfat_core.h File Reference

Go to the source code of this file.

Macros

#define Vsh_x   ghostFace[0]
 
#define Vsh_y   ghostFace[1]
 
#define Vsh_z   ghostFace[2]
 
#define Vsh_t   ghostFace[3]
 
#define xcomm   kparam.ghostDim[0]
 
#define ycomm   kparam.ghostDim[1]
 
#define zcomm   kparam.ghostDim[2]
 
#define tcomm   kparam.ghostDim[3]
 
#define dimcomm   kparam.ghostDim
 
#define D1   kparam.D1
 
#define D2   kparam.D2
 
#define D3   kparam.D3
 
#define D4   kparam.D4
 
#define D1h   kparam.D1h
 
#define DECLARE_VAR_SIGN   short sign=1
 
#define DECLARE_NEW_X
 
#define DECLARE_X_ARRAY   int x[4] = {x1,x2,x3, x4};
 
#define a00_re   A0.x
 
#define a00_im   A0.y
 
#define a01_re   A1.x
 
#define a01_im   A1.y
 
#define a02_re   A2.x
 
#define a02_im   A2.y
 
#define a10_re   A3.x
 
#define a10_im   A3.y
 
#define a11_re   A4.x
 
#define a11_im   A4.y
 
#define a12_re   A5.x
 
#define a12_im   A5.y
 
#define a20_re   A6.x
 
#define a20_im   A6.y
 
#define a21_re   A7.x
 
#define a21_im   A7.y
 
#define a22_re   A8.x
 
#define a22_im   A8.y
 
#define b00_re   B0.x
 
#define b00_im   B0.y
 
#define b01_re   B1.x
 
#define b01_im   B1.y
 
#define b02_re   B2.x
 
#define b02_im   B2.y
 
#define b10_re   B3.x
 
#define b10_im   B3.y
 
#define b11_re   B4.x
 
#define b11_im   B4.y
 
#define b12_re   B5.x
 
#define b12_im   B5.y
 
#define b20_re   B6.x
 
#define b20_im   B6.y
 
#define b21_re   B7.x
 
#define b21_im   B7.y
 
#define b22_re   B8.x
 
#define b22_im   B8.y
 
#define c00_re   C0.x
 
#define c00_im   C0.y
 
#define c01_re   C1.x
 
#define c01_im   C1.y
 
#define c02_re   C2.x
 
#define c02_im   C2.y
 
#define c10_re   C3.x
 
#define c10_im   C3.y
 
#define c11_re   C4.x
 
#define c11_im   C4.y
 
#define c12_re   C5.x
 
#define c12_im   C5.y
 
#define c20_re   C6.x
 
#define c20_im   C6.y
 
#define c21_re   C7.x
 
#define c21_im   C7.y
 
#define c22_re   C8.x
 
#define c22_im   C8.y
 
#define bb00_re   BB0.x
 
#define bb00_im   BB0.y
 
#define bb01_re   BB1.x
 
#define bb01_im   BB1.y
 
#define bb02_re   BB2.x
 
#define bb02_im   BB2.y
 
#define bb10_re   BB3.x
 
#define bb10_im   BB3.y
 
#define bb11_re   BB4.x
 
#define bb11_im   BB4.y
 
#define bb12_re   BB5.x
 
#define bb12_im   BB5.y
 
#define bb20_re   BB6.x
 
#define bb20_im   BB6.y
 
#define bb21_re   BB7.x
 
#define bb21_im   BB7.y
 
#define bb22_re   BB8.x
 
#define bb22_im   BB8.y
 
#define aT00_re   (+a00_re)
 
#define aT00_im   (-a00_im)
 
#define aT01_re   (+a10_re)
 
#define aT01_im   (-a10_im)
 
#define aT02_re   (+a20_re)
 
#define aT02_im   (-a20_im)
 
#define aT10_re   (+a01_re)
 
#define aT10_im   (-a01_im)
 
#define aT11_re   (+a11_re)
 
#define aT11_im   (-a11_im)
 
#define aT12_re   (+a21_re)
 
#define aT12_im   (-a21_im)
 
#define aT20_re   (+a02_re)
 
#define aT20_im   (-a02_im)
 
#define aT21_re   (+a12_re)
 
#define aT21_im   (-a12_im)
 
#define aT22_re   (+a22_re)
 
#define aT22_im   (-a22_im)
 
#define bT00_re   (+b00_re)
 
#define bT00_im   (-b00_im)
 
#define bT01_re   (+b10_re)
 
#define bT01_im   (-b10_im)
 
#define bT02_re   (+b20_re)
 
#define bT02_im   (-b20_im)
 
#define bT10_re   (+b01_re)
 
#define bT10_im   (-b01_im)
 
#define bT11_re   (+b11_re)
 
#define bT11_im   (-b11_im)
 
#define bT12_re   (+b21_re)
 
#define bT12_im   (-b21_im)
 
#define bT20_re   (+b02_re)
 
#define bT20_im   (-b02_im)
 
#define bT21_re   (+b12_re)
 
#define bT21_im   (-b12_im)
 
#define bT22_re   (+b22_re)
 
#define bT22_im   (-b22_im)
 
#define cT00_re   (+c00_re)
 
#define cT00_im   (-c00_im)
 
#define cT01_re   (+c10_re)
 
#define cT01_im   (-c10_im)
 
#define cT02_re   (+c20_re)
 
#define cT02_im   (-c20_im)
 
#define cT10_re   (+c01_re)
 
#define cT10_im   (-c01_im)
 
#define cT11_re   (+c11_re)
 
#define cT11_im   (-c11_im)
 
#define cT12_re   (+c21_re)
 
#define cT12_im   (-c21_im)
 
#define cT20_re   (+c02_re)
 
#define cT20_im   (-c02_im)
 
#define cT21_re   (+c12_re)
 
#define cT21_im   (-c12_im)
 
#define cT22_re   (+c22_re)
 
#define cT22_im   (-c22_im)
 
#define tempa00_re   TEMPA0.x
 
#define tempa00_im   TEMPA0.y
 
#define tempa01_re   TEMPA1.x
 
#define tempa01_im   TEMPA1.y
 
#define tempa02_re   TEMPA2.x
 
#define tempa02_im   TEMPA2.y
 
#define tempa10_re   TEMPA3.x
 
#define tempa10_im   TEMPA3.y
 
#define tempa11_re   TEMPA4.x
 
#define tempa11_im   TEMPA4.y
 
#define tempa12_re   TEMPA5.x
 
#define tempa12_im   TEMPA5.y
 
#define tempa20_re   TEMPA6.x
 
#define tempa20_im   TEMPA6.y
 
#define tempa21_re   TEMPA7.x
 
#define tempa21_im   TEMPA7.y
 
#define tempa22_re   TEMPA8.x
 
#define tempa22_im   TEMPA8.y
 
#define tempb00_re   TEMPB0.x
 
#define tempb00_im   TEMPB0.y
 
#define tempb01_re   TEMPB1.x
 
#define tempb01_im   TEMPB1.y
 
#define tempb02_re   TEMPB2.x
 
#define tempb02_im   TEMPB2.y
 
#define tempb10_re   TEMPB3.x
 
#define tempb10_im   TEMPB3.y
 
#define tempb11_re   TEMPB4.x
 
#define tempb11_im   TEMPB4.y
 
#define tempb12_re   TEMPB5.x
 
#define tempb12_im   TEMPB5.y
 
#define tempb20_re   TEMPB6.x
 
#define tempb20_im   TEMPB6.y
 
#define tempb21_re   TEMPB7.x
 
#define tempb21_im   TEMPB7.y
 
#define tempb22_re   TEMPB8.x
 
#define tempb22_im   TEMPB8.y
 
#define fat00_re   FAT0.x
 
#define fat00_im   FAT0.y
 
#define fat01_re   FAT1.x
 
#define fat01_im   FAT1.y
 
#define fat02_re   FAT2.x
 
#define fat02_im   FAT2.y
 
#define fat10_re   FAT3.x
 
#define fat10_im   FAT3.y
 
#define fat11_re   FAT4.x
 
#define fat11_im   FAT4.y
 
#define fat12_re   FAT5.x
 
#define fat12_im   FAT5.y
 
#define fat20_re   FAT6.x
 
#define fat20_im   FAT6.y
 
#define fat21_re   FAT7.x
 
#define fat21_im   FAT7.y
 
#define fat22_re   FAT8.x
 
#define fat22_im   FAT8.y
 
#define NUM_FLOATS   5
 
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
 
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
 
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
 
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
 
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
 
#define UPDATE_COOR_PLUS(mydir, idx)
 
#define UPDATE_COOR_MINUS(mydir, idx)
 
#define UPDATE_COOR_LOWER_STAPLE(mydir1, mydir2)
 
#define UPDATE_COOR_LOWER_STAPLE_DIAG(nu, mu, dir1, dir2)
 
#define UPDATE_COOR_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define COMPUTE_RECONSTRUCT_SIGN(sign, dir, i1, i2, i3, i4)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE(mydir1, mydir2)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define Vsh_x   ghostFace[0]
 
#define Vsh_y   ghostFace[1]
 
#define Vsh_z   ghostFace[2]
 
#define Vsh_t   ghostFace[3]
 
#define xcomm   kparam.ghostDim[0]
 
#define ycomm   kparam.ghostDim[1]
 
#define zcomm   kparam.ghostDim[2]
 
#define tcomm   kparam.ghostDim[3]
 
#define dimcomm   kparam.ghostDim
 
#define D1   kparam.D1
 
#define D2   kparam.D2
 
#define D3   kparam.D3
 
#define D4   kparam.D4
 
#define D1h   kparam.D1h
 
#define DECLARE_VAR_SIGN   short sign=1
 
#define DECLARE_NEW_X
 
#define DECLARE_X_ARRAY   int x[4] = {x1,x2,x3, x4};
 
#define a00_re   A0.x
 
#define a00_im   A0.y
 
#define a01_re   A0.z
 
#define a01_im   A0.w
 
#define a02_re   A1.x
 
#define a02_im   A1.y
 
#define a10_re   A1.z
 
#define a10_im   A1.w
 
#define a11_re   A2.x
 
#define a11_im   A2.y
 
#define a12_re   A2.z
 
#define a12_im   A2.w
 
#define a20_re   A3.x
 
#define a20_im   A3.y
 
#define a21_re   A3.z
 
#define a21_im   A3.w
 
#define a22_re   A4.x
 
#define a22_im   A4.y
 
#define b00_re   B0.x
 
#define b00_im   B0.y
 
#define b01_re   B0.z
 
#define b01_im   B0.w
 
#define b02_re   B1.x
 
#define b02_im   B1.y
 
#define b10_re   B1.z
 
#define b10_im   B1.w
 
#define b11_re   B2.x
 
#define b11_im   B2.y
 
#define b12_re   B2.z
 
#define b12_im   B2.w
 
#define b20_re   B3.x
 
#define b20_im   B3.y
 
#define b21_re   B3.z
 
#define b21_im   B3.w
 
#define b22_re   B4.x
 
#define b22_im   B4.y
 
#define c00_re   C0.x
 
#define c00_im   C0.y
 
#define c01_re   C0.z
 
#define c01_im   C0.w
 
#define c02_re   C1.x
 
#define c02_im   C1.y
 
#define c10_re   C1.z
 
#define c10_im   C1.w
 
#define c11_re   C2.x
 
#define c11_im   C2.y
 
#define c12_re   C2.z
 
#define c12_im   C2.w
 
#define c20_re   C3.x
 
#define c20_im   C3.y
 
#define c21_re   C3.z
 
#define c21_im   C3.w
 
#define c22_re   C4.x
 
#define c22_im   C4.y
 
#define bb00_re   BB0.x
 
#define bb00_im   BB0.y
 
#define bb01_re   BB1.x
 
#define bb01_im   BB1.y
 
#define bb02_re   BB2.x
 
#define bb02_im   BB2.y
 
#define bb10_re   BB3.x
 
#define bb10_im   BB3.y
 
#define bb11_re   BB4.x
 
#define bb11_im   BB4.y
 
#define bb12_re   BB5.x
 
#define bb12_im   BB5.y
 
#define bb20_re   BB6.x
 
#define bb20_im   BB6.y
 
#define bb21_re   BB7.x
 
#define bb21_im   BB7.y
 
#define bb22_re   BB8.x
 
#define bb22_im   BB8.y
 
#define aT00_re   (+a00_re)
 
#define aT00_im   (-a00_im)
 
#define aT01_re   (+a10_re)
 
#define aT01_im   (-a10_im)
 
#define aT02_re   (+a20_re)
 
#define aT02_im   (-a20_im)
 
#define aT10_re   (+a01_re)
 
#define aT10_im   (-a01_im)
 
#define aT11_re   (+a11_re)
 
#define aT11_im   (-a11_im)
 
#define aT12_re   (+a21_re)
 
#define aT12_im   (-a21_im)
 
#define aT20_re   (+a02_re)
 
#define aT20_im   (-a02_im)
 
#define aT21_re   (+a12_re)
 
#define aT21_im   (-a12_im)
 
#define aT22_re   (+a22_re)
 
#define aT22_im   (-a22_im)
 
#define bT00_re   (+b00_re)
 
#define bT00_im   (-b00_im)
 
#define bT01_re   (+b10_re)
 
#define bT01_im   (-b10_im)
 
#define bT02_re   (+b20_re)
 
#define bT02_im   (-b20_im)
 
#define bT10_re   (+b01_re)
 
#define bT10_im   (-b01_im)
 
#define bT11_re   (+b11_re)
 
#define bT11_im   (-b11_im)
 
#define bT12_re   (+b21_re)
 
#define bT12_im   (-b21_im)
 
#define bT20_re   (+b02_re)
 
#define bT20_im   (-b02_im)
 
#define bT21_re   (+b12_re)
 
#define bT21_im   (-b12_im)
 
#define bT22_re   (+b22_re)
 
#define bT22_im   (-b22_im)
 
#define cT00_re   (+c00_re)
 
#define cT00_im   (-c00_im)
 
#define cT01_re   (+c10_re)
 
#define cT01_im   (-c10_im)
 
#define cT02_re   (+c20_re)
 
#define cT02_im   (-c20_im)
 
#define cT10_re   (+c01_re)
 
#define cT10_im   (-c01_im)
 
#define cT11_re   (+c11_re)
 
#define cT11_im   (-c11_im)
 
#define cT12_re   (+c21_re)
 
#define cT12_im   (-c21_im)
 
#define cT20_re   (+c02_re)
 
#define cT20_im   (-c02_im)
 
#define cT21_re   (+c12_re)
 
#define cT21_im   (-c12_im)
 
#define cT22_re   (+c22_re)
 
#define cT22_im   (-c22_im)
 
#define tempa00_re   TEMPA0.x
 
#define tempa00_im   TEMPA0.y
 
#define tempa01_re   TEMPA1.x
 
#define tempa01_im   TEMPA1.y
 
#define tempa02_re   TEMPA2.x
 
#define tempa02_im   TEMPA2.y
 
#define tempa10_re   TEMPA3.x
 
#define tempa10_im   TEMPA3.y
 
#define tempa11_re   TEMPA4.x
 
#define tempa11_im   TEMPA4.y
 
#define tempa12_re   TEMPA5.x
 
#define tempa12_im   TEMPA5.y
 
#define tempa20_re   TEMPA6.x
 
#define tempa20_im   TEMPA6.y
 
#define tempa21_re   TEMPA7.x
 
#define tempa21_im   TEMPA7.y
 
#define tempa22_re   TEMPA8.x
 
#define tempa22_im   TEMPA8.y
 
#define tempb00_re   TEMPB0.x
 
#define tempb00_im   TEMPB0.y
 
#define tempb01_re   TEMPB1.x
 
#define tempb01_im   TEMPB1.y
 
#define tempb02_re   TEMPB2.x
 
#define tempb02_im   TEMPB2.y
 
#define tempb10_re   TEMPB3.x
 
#define tempb10_im   TEMPB3.y
 
#define tempb11_re   TEMPB4.x
 
#define tempb11_im   TEMPB4.y
 
#define tempb12_re   TEMPB5.x
 
#define tempb12_im   TEMPB5.y
 
#define tempb20_re   TEMPB6.x
 
#define tempb20_im   TEMPB6.y
 
#define tempb21_re   TEMPB7.x
 
#define tempb21_im   TEMPB7.y
 
#define tempb22_re   TEMPB8.x
 
#define tempb22_im   TEMPB8.y
 
#define fat00_re   FAT0.x
 
#define fat00_im   FAT0.y
 
#define fat01_re   FAT1.x
 
#define fat01_im   FAT1.y
 
#define fat02_re   FAT2.x
 
#define fat02_im   FAT2.y
 
#define fat10_re   FAT3.x
 
#define fat10_im   FAT3.y
 
#define fat11_re   FAT4.x
 
#define fat11_im   FAT4.y
 
#define fat12_re   FAT5.x
 
#define fat12_im   FAT5.y
 
#define fat20_re   FAT6.x
 
#define fat20_im   FAT6.y
 
#define fat21_re   FAT7.x
 
#define fat21_im   FAT7.y
 
#define fat22_re   FAT8.x
 
#define fat22_im   FAT8.y
 
#define NUM_FLOATS   5
 
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
 
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
 
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
 
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
 
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
 
#define UPDATE_COOR_PLUS(mydir, idx)
 
#define UPDATE_COOR_MINUS(mydir, idx)
 
#define UPDATE_COOR_LOWER_STAPLE(mydir1, mydir2)
 
#define UPDATE_COOR_LOWER_STAPLE_DIAG(nu, mu, dir1, dir2)
 
#define UPDATE_COOR_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define COMPUTE_RECONSTRUCT_SIGN(sign, dir, i1, i2, i3, i4)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE(mydir1, mydir2)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define Vsh_x   ghostFace[0]
 
#define Vsh_y   ghostFace[1]
 
#define Vsh_z   ghostFace[2]
 
#define Vsh_t   ghostFace[3]
 
#define xcomm   kparam.ghostDim[0]
 
#define ycomm   kparam.ghostDim[1]
 
#define zcomm   kparam.ghostDim[2]
 
#define tcomm   kparam.ghostDim[3]
 
#define dimcomm   kparam.ghostDim
 
#define D1   kparam.D1
 
#define D2   kparam.D2
 
#define D3   kparam.D3
 
#define D4   kparam.D4
 
#define D1h   kparam.D1h
 
#define DECLARE_VAR_SIGN
 
#define DECLARE_NEW_X
 
#define DECLARE_X_ARRAY
 
#define a00_re   A0.x
 
#define a00_im   A0.y
 
#define a01_re   A1.x
 
#define a01_im   A1.y
 
#define a02_re   A2.x
 
#define a02_im   A2.y
 
#define a10_re   A3.x
 
#define a10_im   A3.y
 
#define a11_re   A4.x
 
#define a11_im   A4.y
 
#define a12_re   A5.x
 
#define a12_im   A5.y
 
#define a20_re   A6.x
 
#define a20_im   A6.y
 
#define a21_re   A7.x
 
#define a21_im   A7.y
 
#define a22_re   A8.x
 
#define a22_im   A8.y
 
#define b00_re   B0.x
 
#define b00_im   B0.y
 
#define b01_re   B1.x
 
#define b01_im   B1.y
 
#define b02_re   B2.x
 
#define b02_im   B2.y
 
#define b10_re   B3.x
 
#define b10_im   B3.y
 
#define b11_re   B4.x
 
#define b11_im   B4.y
 
#define b12_re   B5.x
 
#define b12_im   B5.y
 
#define b20_re   B6.x
 
#define b20_im   B6.y
 
#define b21_re   B7.x
 
#define b21_im   B7.y
 
#define b22_re   B8.x
 
#define b22_im   B8.y
 
#define c00_re   C0.x
 
#define c00_im   C0.y
 
#define c01_re   C1.x
 
#define c01_im   C1.y
 
#define c02_re   C2.x
 
#define c02_im   C2.y
 
#define c10_re   C3.x
 
#define c10_im   C3.y
 
#define c11_re   C4.x
 
#define c11_im   C4.y
 
#define c12_re   C5.x
 
#define c12_im   C5.y
 
#define c20_re   C6.x
 
#define c20_im   C6.y
 
#define c21_re   C7.x
 
#define c21_im   C7.y
 
#define c22_re   C8.x
 
#define c22_im   C8.y
 
#define bb00_re   BB0.x
 
#define bb00_im   BB0.y
 
#define bb01_re   BB1.x
 
#define bb01_im   BB1.y
 
#define bb02_re   BB2.x
 
#define bb02_im   BB2.y
 
#define bb10_re   BB3.x
 
#define bb10_im   BB3.y
 
#define bb11_re   BB4.x
 
#define bb11_im   BB4.y
 
#define bb12_re   BB5.x
 
#define bb12_im   BB5.y
 
#define bb20_re   BB6.x
 
#define bb20_im   BB6.y
 
#define bb21_re   BB7.x
 
#define bb21_im   BB7.y
 
#define bb22_re   BB8.x
 
#define bb22_im   BB8.y
 
#define aT00_re   (+a00_re)
 
#define aT00_im   (-a00_im)
 
#define aT01_re   (+a10_re)
 
#define aT01_im   (-a10_im)
 
#define aT02_re   (+a20_re)
 
#define aT02_im   (-a20_im)
 
#define aT10_re   (+a01_re)
 
#define aT10_im   (-a01_im)
 
#define aT11_re   (+a11_re)
 
#define aT11_im   (-a11_im)
 
#define aT12_re   (+a21_re)
 
#define aT12_im   (-a21_im)
 
#define aT20_re   (+a02_re)
 
#define aT20_im   (-a02_im)
 
#define aT21_re   (+a12_re)
 
#define aT21_im   (-a12_im)
 
#define aT22_re   (+a22_re)
 
#define aT22_im   (-a22_im)
 
#define bT00_re   (+b00_re)
 
#define bT00_im   (-b00_im)
 
#define bT01_re   (+b10_re)
 
#define bT01_im   (-b10_im)
 
#define bT02_re   (+b20_re)
 
#define bT02_im   (-b20_im)
 
#define bT10_re   (+b01_re)
 
#define bT10_im   (-b01_im)
 
#define bT11_re   (+b11_re)
 
#define bT11_im   (-b11_im)
 
#define bT12_re   (+b21_re)
 
#define bT12_im   (-b21_im)
 
#define bT20_re   (+b02_re)
 
#define bT20_im   (-b02_im)
 
#define bT21_re   (+b12_re)
 
#define bT21_im   (-b12_im)
 
#define bT22_re   (+b22_re)
 
#define bT22_im   (-b22_im)
 
#define cT00_re   (+c00_re)
 
#define cT00_im   (-c00_im)
 
#define cT01_re   (+c10_re)
 
#define cT01_im   (-c10_im)
 
#define cT02_re   (+c20_re)
 
#define cT02_im   (-c20_im)
 
#define cT10_re   (+c01_re)
 
#define cT10_im   (-c01_im)
 
#define cT11_re   (+c11_re)
 
#define cT11_im   (-c11_im)
 
#define cT12_re   (+c21_re)
 
#define cT12_im   (-c21_im)
 
#define cT20_re   (+c02_re)
 
#define cT20_im   (-c02_im)
 
#define cT21_re   (+c12_re)
 
#define cT21_im   (-c12_im)
 
#define cT22_re   (+c22_re)
 
#define cT22_im   (-c22_im)
 
#define tempa00_re   TEMPA0.x
 
#define tempa00_im   TEMPA0.y
 
#define tempa01_re   TEMPA1.x
 
#define tempa01_im   TEMPA1.y
 
#define tempa02_re   TEMPA2.x
 
#define tempa02_im   TEMPA2.y
 
#define tempa10_re   TEMPA3.x
 
#define tempa10_im   TEMPA3.y
 
#define tempa11_re   TEMPA4.x
 
#define tempa11_im   TEMPA4.y
 
#define tempa12_re   TEMPA5.x
 
#define tempa12_im   TEMPA5.y
 
#define tempa20_re   TEMPA6.x
 
#define tempa20_im   TEMPA6.y
 
#define tempa21_re   TEMPA7.x
 
#define tempa21_im   TEMPA7.y
 
#define tempa22_re   TEMPA8.x
 
#define tempa22_im   TEMPA8.y
 
#define tempb00_re   TEMPB0.x
 
#define tempb00_im   TEMPB0.y
 
#define tempb01_re   TEMPB1.x
 
#define tempb01_im   TEMPB1.y
 
#define tempb02_re   TEMPB2.x
 
#define tempb02_im   TEMPB2.y
 
#define tempb10_re   TEMPB3.x
 
#define tempb10_im   TEMPB3.y
 
#define tempb11_re   TEMPB4.x
 
#define tempb11_im   TEMPB4.y
 
#define tempb12_re   TEMPB5.x
 
#define tempb12_im   TEMPB5.y
 
#define tempb20_re   TEMPB6.x
 
#define tempb20_im   TEMPB6.y
 
#define tempb21_re   TEMPB7.x
 
#define tempb21_im   TEMPB7.y
 
#define tempb22_re   TEMPB8.x
 
#define tempb22_im   TEMPB8.y
 
#define fat00_re   FAT0.x
 
#define fat00_im   FAT0.y
 
#define fat01_re   FAT1.x
 
#define fat01_im   FAT1.y
 
#define fat02_re   FAT2.x
 
#define fat02_im   FAT2.y
 
#define fat10_re   FAT3.x
 
#define fat10_im   FAT3.y
 
#define fat11_re   FAT4.x
 
#define fat11_im   FAT4.y
 
#define fat12_re   FAT5.x
 
#define fat12_im   FAT5.y
 
#define fat20_re   FAT6.x
 
#define fat20_im   FAT6.y
 
#define fat21_re   FAT7.x
 
#define fat21_im   FAT7.y
 
#define fat22_re   FAT8.x
 
#define fat22_im   FAT8.y
 
#define NUM_FLOATS   5
 
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
 
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
 
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
 
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
 
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
 
#define UPDATE_COOR_PLUS(mydir, idx)
 
#define UPDATE_COOR_MINUS(mydir, idx)
 
#define UPDATE_COOR_LOWER_STAPLE(mydir1, mydir2)
 
#define UPDATE_COOR_LOWER_STAPLE_DIAG(nu, mu, dir1, dir2)
 
#define COMPUTE_RECONSTRUCT_SIGN(sign, dir, i1, i2, i3, i4)
 
#define UPDATE_COOR_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE(mydir1, mydir2)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define Vsh_x   ghostFace[0]
 
#define Vsh_y   ghostFace[1]
 
#define Vsh_z   ghostFace[2]
 
#define Vsh_t   ghostFace[3]
 
#define xcomm   kparam.ghostDim[0]
 
#define ycomm   kparam.ghostDim[1]
 
#define zcomm   kparam.ghostDim[2]
 
#define tcomm   kparam.ghostDim[3]
 
#define dimcomm   kparam.ghostDim
 
#define D1   kparam.D1
 
#define D2   kparam.D2
 
#define D3   kparam.D3
 
#define D4   kparam.D4
 
#define D1h   kparam.D1h
 
#define DECLARE_VAR_SIGN
 
#define DECLARE_NEW_X
 
#define DECLARE_X_ARRAY
 
#define a00_re   A0.x
 
#define a00_im   A0.y
 
#define a01_re   A1.x
 
#define a01_im   A1.y
 
#define a02_re   A2.x
 
#define a02_im   A2.y
 
#define a10_re   A3.x
 
#define a10_im   A3.y
 
#define a11_re   A4.x
 
#define a11_im   A4.y
 
#define a12_re   A5.x
 
#define a12_im   A5.y
 
#define a20_re   A6.x
 
#define a20_im   A6.y
 
#define a21_re   A7.x
 
#define a21_im   A7.y
 
#define a22_re   A8.x
 
#define a22_im   A8.y
 
#define b00_re   B0.x
 
#define b00_im   B0.y
 
#define b01_re   B1.x
 
#define b01_im   B1.y
 
#define b02_re   B2.x
 
#define b02_im   B2.y
 
#define b10_re   B3.x
 
#define b10_im   B3.y
 
#define b11_re   B4.x
 
#define b11_im   B4.y
 
#define b12_re   B5.x
 
#define b12_im   B5.y
 
#define b20_re   B6.x
 
#define b20_im   B6.y
 
#define b21_re   B7.x
 
#define b21_im   B7.y
 
#define b22_re   B8.x
 
#define b22_im   B8.y
 
#define c00_re   C0.x
 
#define c00_im   C0.y
 
#define c01_re   C1.x
 
#define c01_im   C1.y
 
#define c02_re   C2.x
 
#define c02_im   C2.y
 
#define c10_re   C3.x
 
#define c10_im   C3.y
 
#define c11_re   C4.x
 
#define c11_im   C4.y
 
#define c12_re   C5.x
 
#define c12_im   C5.y
 
#define c20_re   C6.x
 
#define c20_im   C6.y
 
#define c21_re   C7.x
 
#define c21_im   C7.y
 
#define c22_re   C8.x
 
#define c22_im   C8.y
 
#define bb00_re   BB0.x
 
#define bb00_im   BB0.y
 
#define bb01_re   BB1.x
 
#define bb01_im   BB1.y
 
#define bb02_re   BB2.x
 
#define bb02_im   BB2.y
 
#define bb10_re   BB3.x
 
#define bb10_im   BB3.y
 
#define bb11_re   BB4.x
 
#define bb11_im   BB4.y
 
#define bb12_re   BB5.x
 
#define bb12_im   BB5.y
 
#define bb20_re   BB6.x
 
#define bb20_im   BB6.y
 
#define bb21_re   BB7.x
 
#define bb21_im   BB7.y
 
#define bb22_re   BB8.x
 
#define bb22_im   BB8.y
 
#define aT00_re   (+a00_re)
 
#define aT00_im   (-a00_im)
 
#define aT01_re   (+a10_re)
 
#define aT01_im   (-a10_im)
 
#define aT02_re   (+a20_re)
 
#define aT02_im   (-a20_im)
 
#define aT10_re   (+a01_re)
 
#define aT10_im   (-a01_im)
 
#define aT11_re   (+a11_re)
 
#define aT11_im   (-a11_im)
 
#define aT12_re   (+a21_re)
 
#define aT12_im   (-a21_im)
 
#define aT20_re   (+a02_re)
 
#define aT20_im   (-a02_im)
 
#define aT21_re   (+a12_re)
 
#define aT21_im   (-a12_im)
 
#define aT22_re   (+a22_re)
 
#define aT22_im   (-a22_im)
 
#define bT00_re   (+b00_re)
 
#define bT00_im   (-b00_im)
 
#define bT01_re   (+b10_re)
 
#define bT01_im   (-b10_im)
 
#define bT02_re   (+b20_re)
 
#define bT02_im   (-b20_im)
 
#define bT10_re   (+b01_re)
 
#define bT10_im   (-b01_im)
 
#define bT11_re   (+b11_re)
 
#define bT11_im   (-b11_im)
 
#define bT12_re   (+b21_re)
 
#define bT12_im   (-b21_im)
 
#define bT20_re   (+b02_re)
 
#define bT20_im   (-b02_im)
 
#define bT21_re   (+b12_re)
 
#define bT21_im   (-b12_im)
 
#define bT22_re   (+b22_re)
 
#define bT22_im   (-b22_im)
 
#define cT00_re   (+c00_re)
 
#define cT00_im   (-c00_im)
 
#define cT01_re   (+c10_re)
 
#define cT01_im   (-c10_im)
 
#define cT02_re   (+c20_re)
 
#define cT02_im   (-c20_im)
 
#define cT10_re   (+c01_re)
 
#define cT10_im   (-c01_im)
 
#define cT11_re   (+c11_re)
 
#define cT11_im   (-c11_im)
 
#define cT12_re   (+c21_re)
 
#define cT12_im   (-c21_im)
 
#define cT20_re   (+c02_re)
 
#define cT20_im   (-c02_im)
 
#define cT21_re   (+c12_re)
 
#define cT21_im   (-c12_im)
 
#define cT22_re   (+c22_re)
 
#define cT22_im   (-c22_im)
 
#define tempa00_re   TEMPA0.x
 
#define tempa00_im   TEMPA0.y
 
#define tempa01_re   TEMPA1.x
 
#define tempa01_im   TEMPA1.y
 
#define tempa02_re   TEMPA2.x
 
#define tempa02_im   TEMPA2.y
 
#define tempa10_re   TEMPA3.x
 
#define tempa10_im   TEMPA3.y
 
#define tempa11_re   TEMPA4.x
 
#define tempa11_im   TEMPA4.y
 
#define tempa12_re   TEMPA5.x
 
#define tempa12_im   TEMPA5.y
 
#define tempa20_re   TEMPA6.x
 
#define tempa20_im   TEMPA6.y
 
#define tempa21_re   TEMPA7.x
 
#define tempa21_im   TEMPA7.y
 
#define tempa22_re   TEMPA8.x
 
#define tempa22_im   TEMPA8.y
 
#define tempb00_re   TEMPB0.x
 
#define tempb00_im   TEMPB0.y
 
#define tempb01_re   TEMPB1.x
 
#define tempb01_im   TEMPB1.y
 
#define tempb02_re   TEMPB2.x
 
#define tempb02_im   TEMPB2.y
 
#define tempb10_re   TEMPB3.x
 
#define tempb10_im   TEMPB3.y
 
#define tempb11_re   TEMPB4.x
 
#define tempb11_im   TEMPB4.y
 
#define tempb12_re   TEMPB5.x
 
#define tempb12_im   TEMPB5.y
 
#define tempb20_re   TEMPB6.x
 
#define tempb20_im   TEMPB6.y
 
#define tempb21_re   TEMPB7.x
 
#define tempb21_im   TEMPB7.y
 
#define tempb22_re   TEMPB8.x
 
#define tempb22_im   TEMPB8.y
 
#define fat00_re   FAT0.x
 
#define fat00_im   FAT0.y
 
#define fat01_re   FAT1.x
 
#define fat01_im   FAT1.y
 
#define fat02_re   FAT2.x
 
#define fat02_im   FAT2.y
 
#define fat10_re   FAT3.x
 
#define fat10_im   FAT3.y
 
#define fat11_re   FAT4.x
 
#define fat11_im   FAT4.y
 
#define fat12_re   FAT5.x
 
#define fat12_im   FAT5.y
 
#define fat20_re   FAT6.x
 
#define fat20_im   FAT6.y
 
#define fat21_re   FAT7.x
 
#define fat21_im   FAT7.y
 
#define fat22_re   FAT8.x
 
#define fat22_im   FAT8.y
 
#define NUM_FLOATS   5
 
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
 
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
 
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
 
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
 
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
 
#define UPDATE_COOR_PLUS(mydir, idx)
 
#define UPDATE_COOR_MINUS(mydir, idx)
 
#define UPDATE_COOR_LOWER_STAPLE(mydir1, mydir2)
 
#define UPDATE_COOR_LOWER_STAPLE_DIAG(nu, mu, dir1, dir2)
 
#define COMPUTE_RECONSTRUCT_SIGN(sign, dir, i1, i2, i3, i4)
 
#define UPDATE_COOR_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE(mydir1, mydir2)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define Vsh_x   ghostFace[0]
 
#define Vsh_y   ghostFace[1]
 
#define Vsh_z   ghostFace[2]
 
#define Vsh_t   ghostFace[3]
 
#define xcomm   kparam.ghostDim[0]
 
#define ycomm   kparam.ghostDim[1]
 
#define zcomm   kparam.ghostDim[2]
 
#define tcomm   kparam.ghostDim[3]
 
#define dimcomm   kparam.ghostDim
 
#define D1   kparam.D1
 
#define D2   kparam.D2
 
#define D3   kparam.D3
 
#define D4   kparam.D4
 
#define D1h   kparam.D1h
 
#define DECLARE_VAR_SIGN   short sign=1
 
#define DECLARE_NEW_X
 
#define DECLARE_X_ARRAY   int x[4] = {x1,x2,x3, x4};
 
#define a00_re   A0.x
 
#define a00_im   A0.y
 
#define a01_re   A1.x
 
#define a01_im   A1.y
 
#define a02_re   A2.x
 
#define a02_im   A2.y
 
#define a10_re   A3.x
 
#define a10_im   A3.y
 
#define a11_re   A4.x
 
#define a11_im   A4.y
 
#define a12_re   A5.x
 
#define a12_im   A5.y
 
#define a20_re   A6.x
 
#define a20_im   A6.y
 
#define a21_re   A7.x
 
#define a21_im   A7.y
 
#define a22_re   A8.x
 
#define a22_im   A8.y
 
#define b00_re   B0.x
 
#define b00_im   B0.y
 
#define b01_re   B1.x
 
#define b01_im   B1.y
 
#define b02_re   B2.x
 
#define b02_im   B2.y
 
#define b10_re   B3.x
 
#define b10_im   B3.y
 
#define b11_re   B4.x
 
#define b11_im   B4.y
 
#define b12_re   B5.x
 
#define b12_im   B5.y
 
#define b20_re   B6.x
 
#define b20_im   B6.y
 
#define b21_re   B7.x
 
#define b21_im   B7.y
 
#define b22_re   B8.x
 
#define b22_im   B8.y
 
#define c00_re   C0.x
 
#define c00_im   C0.y
 
#define c01_re   C1.x
 
#define c01_im   C1.y
 
#define c02_re   C2.x
 
#define c02_im   C2.y
 
#define c10_re   C3.x
 
#define c10_im   C3.y
 
#define c11_re   C4.x
 
#define c11_im   C4.y
 
#define c12_re   C5.x
 
#define c12_im   C5.y
 
#define c20_re   C6.x
 
#define c20_im   C6.y
 
#define c21_re   C7.x
 
#define c21_im   C7.y
 
#define c22_re   C8.x
 
#define c22_im   C8.y
 
#define bb00_re   BB0.x
 
#define bb00_im   BB0.y
 
#define bb01_re   BB1.x
 
#define bb01_im   BB1.y
 
#define bb02_re   BB2.x
 
#define bb02_im   BB2.y
 
#define bb10_re   BB3.x
 
#define bb10_im   BB3.y
 
#define bb11_re   BB4.x
 
#define bb11_im   BB4.y
 
#define bb12_re   BB5.x
 
#define bb12_im   BB5.y
 
#define bb20_re   BB6.x
 
#define bb20_im   BB6.y
 
#define bb21_re   BB7.x
 
#define bb21_im   BB7.y
 
#define bb22_re   BB8.x
 
#define bb22_im   BB8.y
 
#define aT00_re   (+a00_re)
 
#define aT00_im   (-a00_im)
 
#define aT01_re   (+a10_re)
 
#define aT01_im   (-a10_im)
 
#define aT02_re   (+a20_re)
 
#define aT02_im   (-a20_im)
 
#define aT10_re   (+a01_re)
 
#define aT10_im   (-a01_im)
 
#define aT11_re   (+a11_re)
 
#define aT11_im   (-a11_im)
 
#define aT12_re   (+a21_re)
 
#define aT12_im   (-a21_im)
 
#define aT20_re   (+a02_re)
 
#define aT20_im   (-a02_im)
 
#define aT21_re   (+a12_re)
 
#define aT21_im   (-a12_im)
 
#define aT22_re   (+a22_re)
 
#define aT22_im   (-a22_im)
 
#define bT00_re   (+b00_re)
 
#define bT00_im   (-b00_im)
 
#define bT01_re   (+b10_re)
 
#define bT01_im   (-b10_im)
 
#define bT02_re   (+b20_re)
 
#define bT02_im   (-b20_im)
 
#define bT10_re   (+b01_re)
 
#define bT10_im   (-b01_im)
 
#define bT11_re   (+b11_re)
 
#define bT11_im   (-b11_im)
 
#define bT12_re   (+b21_re)
 
#define bT12_im   (-b21_im)
 
#define bT20_re   (+b02_re)
 
#define bT20_im   (-b02_im)
 
#define bT21_re   (+b12_re)
 
#define bT21_im   (-b12_im)
 
#define bT22_re   (+b22_re)
 
#define bT22_im   (-b22_im)
 
#define cT00_re   (+c00_re)
 
#define cT00_im   (-c00_im)
 
#define cT01_re   (+c10_re)
 
#define cT01_im   (-c10_im)
 
#define cT02_re   (+c20_re)
 
#define cT02_im   (-c20_im)
 
#define cT10_re   (+c01_re)
 
#define cT10_im   (-c01_im)
 
#define cT11_re   (+c11_re)
 
#define cT11_im   (-c11_im)
 
#define cT12_re   (+c21_re)
 
#define cT12_im   (-c21_im)
 
#define cT20_re   (+c02_re)
 
#define cT20_im   (-c02_im)
 
#define cT21_re   (+c12_re)
 
#define cT21_im   (-c12_im)
 
#define cT22_re   (+c22_re)
 
#define cT22_im   (-c22_im)
 
#define tempa00_re   TEMPA0.x
 
#define tempa00_im   TEMPA0.y
 
#define tempa01_re   TEMPA1.x
 
#define tempa01_im   TEMPA1.y
 
#define tempa02_re   TEMPA2.x
 
#define tempa02_im   TEMPA2.y
 
#define tempa10_re   TEMPA3.x
 
#define tempa10_im   TEMPA3.y
 
#define tempa11_re   TEMPA4.x
 
#define tempa11_im   TEMPA4.y
 
#define tempa12_re   TEMPA5.x
 
#define tempa12_im   TEMPA5.y
 
#define tempa20_re   TEMPA6.x
 
#define tempa20_im   TEMPA6.y
 
#define tempa21_re   TEMPA7.x
 
#define tempa21_im   TEMPA7.y
 
#define tempa22_re   TEMPA8.x
 
#define tempa22_im   TEMPA8.y
 
#define tempb00_re   TEMPB0.x
 
#define tempb00_im   TEMPB0.y
 
#define tempb01_re   TEMPB1.x
 
#define tempb01_im   TEMPB1.y
 
#define tempb02_re   TEMPB2.x
 
#define tempb02_im   TEMPB2.y
 
#define tempb10_re   TEMPB3.x
 
#define tempb10_im   TEMPB3.y
 
#define tempb11_re   TEMPB4.x
 
#define tempb11_im   TEMPB4.y
 
#define tempb12_re   TEMPB5.x
 
#define tempb12_im   TEMPB5.y
 
#define tempb20_re   TEMPB6.x
 
#define tempb20_im   TEMPB6.y
 
#define tempb21_re   TEMPB7.x
 
#define tempb21_im   TEMPB7.y
 
#define tempb22_re   TEMPB8.x
 
#define tempb22_im   TEMPB8.y
 
#define fat00_re   FAT0.x
 
#define fat00_im   FAT0.y
 
#define fat01_re   FAT1.x
 
#define fat01_im   FAT1.y
 
#define fat02_re   FAT2.x
 
#define fat02_im   FAT2.y
 
#define fat10_re   FAT3.x
 
#define fat10_im   FAT3.y
 
#define fat11_re   FAT4.x
 
#define fat11_im   FAT4.y
 
#define fat12_re   FAT5.x
 
#define fat12_im   FAT5.y
 
#define fat20_re   FAT6.x
 
#define fat20_im   FAT6.y
 
#define fat21_re   FAT7.x
 
#define fat21_im   FAT7.y
 
#define fat22_re   FAT8.x
 
#define fat22_im   FAT8.y
 
#define NUM_FLOATS   5
 
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
 
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
 
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
 
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
 
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
 
#define UPDATE_COOR_PLUS(mydir, idx)
 
#define UPDATE_COOR_MINUS(mydir, idx)
 
#define UPDATE_COOR_LOWER_STAPLE(mydir1, mydir2)
 
#define UPDATE_COOR_LOWER_STAPLE_DIAG(nu, mu, dir1, dir2)
 
#define UPDATE_COOR_LOWER_STAPLE_EX(mydir1, mydir2)
 
#define COMPUTE_RECONSTRUCT_SIGN(sign, dir, i1, i2, i3, i4)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE(mydir1, mydir2)
 
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX(mydir, idx)
 
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX(mydir1, mydir2)
 

Functions

template<int mu, int nu, int odd_bit>
__global__ void LLFAT_KERNEL (do_siteComputeGenStapleParity, RECONSTRUCT)(FloatM *staple_even
 
 if (kparam.kernel_type==LLFAT_EXTERIOR_KERNEL_FWD_X &&x1!=X1m1) return
 
 COMPUTE_RECONSTRUCT_SIGN (sign, nu, x1, x2, x3, x4)
 
 RECONSTRUCT_SITE_LINK (sign, a)
 
 LLFAT_COMPUTE_NEW_IDX_PLUS (nu, X)
 
 LOAD_ODD_SITE_MATRIX (mu, new_mem_idx, B)
 
 COMPUTE_RECONSTRUCT_SIGN (sign, mu, new_x1, new_x2, new_x3, new_x4)
 
 RECONSTRUCT_SITE_LINK (sign, b)
 
 MULT_SU3_NN (a, b, tempa)
 
 LLFAT_COMPUTE_NEW_IDX_PLUS (mu, X)
 
 LOAD_ODD_SITE_MATRIX (nu, new_mem_idx, C)
 
 COMPUTE_RECONSTRUCT_SIGN (sign, nu, new_x1, new_x2, new_x3, new_x4)
 
 RECONSTRUCT_SITE_LINK (sign, c)
 
 MULT_SU3_NA (tempa, c, staple)
 
 LOAD_ODD_SITE_MATRIX (nu,(new_mem_idx), A)
 
 LOAD_ODD_SITE_MATRIX (mu,(new_mem_idx), B)
 
 MULT_SU3_AN (a, b, tempa)
 
 LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE (nu, mu)
 
 LOAD_EVEN_SITE_MATRIX (nu, new_mem_idx, C)
 
 MULT_SU3_NN (tempa, c, b)
 
 LLFAT_ADD_SU3_MATRIX (b, staple, staple)
 
 WRITE_STAPLE_MATRIX (staple_even, mem_idx)
 
template<int mu, int nu, int odd_bit, int save_staple>
__global__ void LLFAT_KERNEL (do_computeGenStapleFieldParity, RECONSTRUCT)(FloatM *staple_even
 
 LOAD_ODD_MULINK_MATRIX (0, new_mem_idx, BB)
 
 MULT_SU3_NN (a, bb, tempa)
 
 if (save_staple)
 
 LOAD_ODD_SITE_MATRIX (nu, new_mem_idx, A)
 
 LLFAT_COMPUTE_NEW_IDX_MINUS (nu, X)
 
 MULT_SU3_AN (a, bb, tempa)
 
 MULT_SU3_NN (tempa, c, a)
 
 LOAD_EVEN_FAT_MATRIX (mu, mem_idx)
 
__global__ void LLFAT_KERNEL (llfatOneLink, RECONSTRUCT)(const FloatN *sitelink_even
 
 if (mem_idx >=Vh)
 
 for (int dir=0;dir< 4;dir++)
 
template<int mu, int nu, int odd_bit>
__global__ void LLFAT_KERNEL_EX (do_siteComputeGenStapleParity, RECONSTRUCT)(FloatM *staple_even
 
 if (mem_idx >=kparam.threads) return
 
 COMPUTE_RECONSTRUCT_SIGN (sign, nu,(x1-2),(x2-2),(x3-2),(x4-2))
 
 LLFAT_COMPUTE_NEW_IDX_PLUS_EX (nu, X)
 
 COMPUTE_RECONSTRUCT_SIGN (sign, mu,(new_x1-2),(new_x2-2),(new_x3-2),(new_x4-2))
 
 LLFAT_COMPUTE_NEW_IDX_PLUS_EX (mu, X)
 
 COMPUTE_RECONSTRUCT_SIGN (sign, nu,(new_x1-2),(new_x2-2),(new_x3-2),(new_x4-2))
 
 LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX (nu, mu)
 
 if (!(x1==1||x1==X1+2||x2==1||x2==X2+2||x3==1||x3==X3+2||x4==1||x4==X4+2))
 
template<int mu, int nu, int odd_bit, int save_staple>
__global__ void LLFAT_KERNEL_EX (do_computeGenStapleFieldParity, RECONSTRUCT)(FloatM *staple_even
 
 LLFAT_COMPUTE_NEW_IDX_MINUS_EX (nu, X)
 
 LLFAT_ADD_SU3_MATRIX (a, staple, staple)
 
__global__ void LLFAT_KERNEL_EX (llfatOneLink, RECONSTRUCT)(const FloatN *sitelink_even
 
 if (sid >=2 *kparam.threads) return
 
 if (idx >=kparam.threads)
 

Variables

__global__ void FloatMstaple_odd
 
__global__ void FloatM const
FloatN
sitelink_even
 
__global__ void FloatM const
FloatN const FloatN
sitelink_odd
 
__global__ void FloatM const
FloatN const FloatN FloatM
fatlink_even
 
__global__ void FloatM const
FloatN const FloatN FloatM
FloatM
fatlink_odd
 
__global__ void FloatM const
FloatN const FloatN FloatM
FloatM Float 
mycoeff
 
__global__ void FloatM const
FloatN const FloatN FloatM
FloatM Float
llfat_kernel_param_t 
kparam
 
FloatM TEMPA5
 
FloatM TEMPA6
 
FloatM TEMPA7
 
FloatM TEMPA8
 
FloatM STAPLE0
 
FloatM STAPLE1
 
FloatM STAPLE2
 
FloatM STAPLE3
 
FloatM STAPLE4
 
FloatM STAPLE5
 
FloatM STAPLE6
 
FloatM STAPLE7
 
FloatM STAPLE8
 
int mem_idx = blockIdx.x*blockDim.x + threadIdx.x
 
int z1 = mem_idx / X1h
 
short x1h = mem_idx - z1*X1h
 
int z2 = z1 / X2
 
short x2 = z1 - z2*X2
 
short x4 = z2 / X3
 
short x3 = z2 - x4*X3
 
short x1odd = (x2 + x3 + x4 + odd_bit) & 1
 
short x1 = 2*x1h + x1odd
 
int X = 2*mem_idx + x1odd
 
int new_mem_idx
 
 DECLARE_VAR_SIGN
 
 DECLARE_NEW_X
 
 DECLARE_X_ARRAY
 
 return
 
__global__ void FloatM const
FloatN const FloatN FloatM
FloatM const FloatM
mulink_even
 
__global__ void FloatM const
FloatN const FloatN FloatM
FloatM const FloatM const
FloatM
mulink_odd
 
FloatM TEMPB0
 
FloatM TEMPB1
 
FloatM TEMPB2
 
FloatM TEMPB3
 
FloatM TEMPB4
 
FloatM TEMPB5
 
FloatM TEMPB6
 
FloatM TEMPB7
 
FloatM TEMPB8
 
 else
 
__global__ void const FloatN
FloatM FloatM Float 
coeff0
 
__global__ void const FloatN
FloatM FloatM Float Float 
coeff5
 
FloatMmy_fatlink = fatlink_even
 
int sid = blockIdx.x*blockDim.x + threadIdx.x
 
int odd_bit = 0
 
 my_sitelink = sitelink_even
 
int idx = sid
 

Macro Definition Documentation

#define a00_im   A0.y
#define a00_im   A0.y
#define a00_im   A0.y

Definition at line 97 of file llfat_quda.cu.

#define a00_im   A0.y
#define a00_im   A0.y
#define a00_re   A0.x
#define a00_re   A0.x

Definition at line 96 of file llfat_quda.cu.

#define a00_re   A0.x
#define a00_re   A0.x
#define a00_re   A0.x
#define a01_im   A0.w
#define a01_im   A1.y

Definition at line 99 of file llfat_quda.cu.

#define a01_im   A1.y
#define a01_im   A1.y
#define a01_im   A1.y
#define a01_re   A0.z
#define a01_re   A1.x

Definition at line 98 of file llfat_quda.cu.

#define a01_re   A1.x
#define a01_re   A1.x
#define a01_re   A1.x
#define a02_im   A1.y
#define a02_im   A2.y
#define a02_im   A2.y

Definition at line 101 of file llfat_quda.cu.

#define a02_im   A2.y
#define a02_im   A2.y
#define a02_re   A1.x
#define a02_re   A2.x
#define a02_re   A2.x

Definition at line 100 of file llfat_quda.cu.

#define a02_re   A2.x
#define a02_re   A2.x
#define a10_im   A1.w
#define a10_im   A3.y
#define a10_im   A3.y
#define a10_im   A3.y
#define a10_im   A3.y

Definition at line 103 of file llfat_quda.cu.

#define a10_re   A1.z
#define a10_re   A3.x
#define a10_re   A3.x

Definition at line 102 of file llfat_quda.cu.

#define a10_re   A3.x
#define a10_re   A3.x
#define a11_im   A2.y
#define a11_im   A4.y
#define a11_im   A4.y

Definition at line 105 of file llfat_quda.cu.

#define a11_im   A4.y
#define a11_im   A4.y
#define a11_re   A2.x
#define a11_re   A4.x
#define a11_re   A4.x

Definition at line 104 of file llfat_quda.cu.

#define a11_re   A4.x
#define a11_re   A4.x
#define a12_im   A2.w
#define a12_im   A5.y
#define a12_im   A5.y
#define a12_im   A5.y
#define a12_im   A5.y

Definition at line 107 of file llfat_quda.cu.

#define a12_re   A2.z
#define a12_re   A5.x
#define a12_re   A5.x
#define a12_re   A5.x
#define a12_re   A5.x

Definition at line 106 of file llfat_quda.cu.

#define a20_im   A3.y
#define a20_im   A6.y
#define a20_im   A6.y
#define a20_im   A6.y
#define a20_im   A6.y

Definition at line 110 of file llfat_quda.cu.

#define a20_re   A3.x
#define a20_re   A6.x
#define a20_re   A6.x
#define a20_re   A6.x
#define a20_re   A6.x

Definition at line 109 of file llfat_quda.cu.

#define a21_im   A3.w
#define a21_im   A7.y

Definition at line 112 of file llfat_quda.cu.

#define a21_im   A7.y
#define a21_im   A7.y
#define a21_im   A7.y
#define a21_re   A3.z
#define a21_re   A7.x

Definition at line 111 of file llfat_quda.cu.

#define a21_re   A7.x
#define a21_re   A7.x
#define a21_re   A7.x
#define a22_im   A4.y
#define a22_im   A8.y

Definition at line 114 of file llfat_quda.cu.

#define a22_im   A8.y
#define a22_im   A8.y
#define a22_im   A8.y
#define a22_re   A4.x
#define a22_re   A8.x

Definition at line 113 of file llfat_quda.cu.

#define a22_re   A8.x
#define a22_re   A8.x
#define a22_re   A8.x
#define aT00_im   (-a00_im)
#define aT00_im   (-a00_im)
#define aT00_im   (-a00_im)

Definition at line 178 of file llfat_quda.cu.

#define aT00_im   (-a00_im)
#define aT00_im   (-a00_im)
#define aT00_re   (+a00_re)
#define aT00_re   (+a00_re)
#define aT00_re   (+a00_re)

Definition at line 177 of file llfat_quda.cu.

#define aT00_re   (+a00_re)
#define aT00_re   (+a00_re)
#define aT01_im   (-a10_im)
#define aT01_im   (-a10_im)
#define aT01_im   (-a10_im)

Definition at line 180 of file llfat_quda.cu.

#define aT01_im   (-a10_im)
#define aT01_im   (-a10_im)
#define aT01_re   (+a10_re)
#define aT01_re   (+a10_re)
#define aT01_re   (+a10_re)
#define aT01_re   (+a10_re)

Definition at line 179 of file llfat_quda.cu.

#define aT01_re   (+a10_re)
#define aT02_im   (-a20_im)
#define aT02_im   (-a20_im)
#define aT02_im   (-a20_im)
#define aT02_im   (-a20_im)

Definition at line 182 of file llfat_quda.cu.

#define aT02_im   (-a20_im)
#define aT02_re   (+a20_re)
#define aT02_re   (+a20_re)
#define aT02_re   (+a20_re)
#define aT02_re   (+a20_re)

Definition at line 181 of file llfat_quda.cu.

#define aT02_re   (+a20_re)
#define aT10_im   (-a01_im)
#define aT10_im   (-a01_im)
#define aT10_im   (-a01_im)
#define aT10_im   (-a01_im)

Definition at line 184 of file llfat_quda.cu.

#define aT10_im   (-a01_im)
#define aT10_re   (+a01_re)
#define aT10_re   (+a01_re)
#define aT10_re   (+a01_re)
#define aT10_re   (+a01_re)

Definition at line 183 of file llfat_quda.cu.

#define aT10_re   (+a01_re)
#define aT11_im   (-a11_im)
#define aT11_im   (-a11_im)
#define aT11_im   (-a11_im)
#define aT11_im   (-a11_im)

Definition at line 186 of file llfat_quda.cu.

#define aT11_im   (-a11_im)
#define aT11_re   (+a11_re)
#define aT11_re   (+a11_re)
#define aT11_re   (+a11_re)
#define aT11_re   (+a11_re)

Definition at line 185 of file llfat_quda.cu.

#define aT11_re   (+a11_re)
#define aT12_im   (-a21_im)
#define aT12_im   (-a21_im)
#define aT12_im   (-a21_im)
#define aT12_im   (-a21_im)

Definition at line 188 of file llfat_quda.cu.

#define aT12_im   (-a21_im)
#define aT12_re   (+a21_re)
#define aT12_re   (+a21_re)
#define aT12_re   (+a21_re)
#define aT12_re   (+a21_re)

Definition at line 187 of file llfat_quda.cu.

#define aT12_re   (+a21_re)
#define aT20_im   (-a02_im)
#define aT20_im   (-a02_im)
#define aT20_im   (-a02_im)
#define aT20_im   (-a02_im)

Definition at line 190 of file llfat_quda.cu.

#define aT20_im   (-a02_im)
#define aT20_re   (+a02_re)
#define aT20_re   (+a02_re)
#define aT20_re   (+a02_re)
#define aT20_re   (+a02_re)

Definition at line 189 of file llfat_quda.cu.

#define aT20_re   (+a02_re)
#define aT21_im   (-a12_im)
#define aT21_im   (-a12_im)
#define aT21_im   (-a12_im)
#define aT21_im   (-a12_im)

Definition at line 192 of file llfat_quda.cu.

#define aT21_im   (-a12_im)
#define aT21_re   (+a12_re)
#define aT21_re   (+a12_re)
#define aT21_re   (+a12_re)
#define aT21_re   (+a12_re)

Definition at line 191 of file llfat_quda.cu.

#define aT21_re   (+a12_re)
#define aT22_im   (-a22_im)
#define aT22_im   (-a22_im)
#define aT22_im   (-a22_im)
#define aT22_im   (-a22_im)

Definition at line 194 of file llfat_quda.cu.

#define aT22_im   (-a22_im)
#define aT22_re   (+a22_re)
#define aT22_re   (+a22_re)
#define aT22_re   (+a22_re)
#define aT22_re   (+a22_re)

Definition at line 193 of file llfat_quda.cu.

#define aT22_re   (+a22_re)
#define b00_im   B0.y
#define b00_im   B0.y

Definition at line 117 of file llfat_quda.cu.

#define b00_im   B0.y
#define b00_im   B0.y
#define b00_im   B0.y
#define b00_re   B0.x
#define b00_re   B0.x

Definition at line 116 of file llfat_quda.cu.

#define b00_re   B0.x
#define b00_re   B0.x
#define b00_re   B0.x
#define b01_im   B0.w
#define b01_im   B1.y

Definition at line 119 of file llfat_quda.cu.

#define b01_im   B1.y
#define b01_im   B1.y
#define b01_im   B1.y
#define b01_re   B0.z
#define b01_re   B1.x

Definition at line 118 of file llfat_quda.cu.

#define b01_re   B1.x
#define b01_re   B1.x
#define b01_re   B1.x
#define b02_im   B1.y
#define b02_im   B2.y

Definition at line 121 of file llfat_quda.cu.

#define b02_im   B2.y
#define b02_im   B2.y
#define b02_im   B2.y
#define b02_re   B1.x
#define b02_re   B2.x

Definition at line 120 of file llfat_quda.cu.

#define b02_re   B2.x
#define b02_re   B2.x
#define b02_re   B2.x
#define b10_im   B1.w
#define b10_im   B3.y

Definition at line 123 of file llfat_quda.cu.

#define b10_im   B3.y
#define b10_im   B3.y
#define b10_im   B3.y
#define b10_re   B1.z
#define b10_re   B3.x
#define b10_re   B3.x

Definition at line 122 of file llfat_quda.cu.

#define b10_re   B3.x
#define b10_re   B3.x
#define b11_im   B2.y
#define b11_im   B4.y
#define b11_im   B4.y

Definition at line 125 of file llfat_quda.cu.

#define b11_im   B4.y
#define b11_im   B4.y
#define b11_re   B2.x
#define b11_re   B4.x
#define b11_re   B4.x

Definition at line 124 of file llfat_quda.cu.

#define b11_re   B4.x
#define b11_re   B4.x
#define b12_im   B2.w
#define b12_im   B5.y
#define b12_im   B5.y

Definition at line 127 of file llfat_quda.cu.

#define b12_im   B5.y
#define b12_im   B5.y
#define b12_re   B2.z
#define b12_re   B5.x
#define b12_re   B5.x

Definition at line 126 of file llfat_quda.cu.

#define b12_re   B5.x
#define b12_re   B5.x
#define b20_im   B3.y
#define b20_im   B6.y
#define b20_im   B6.y

Definition at line 129 of file llfat_quda.cu.

#define b20_im   B6.y
#define b20_im   B6.y
#define b20_re   B3.x
#define b20_re   B6.x
#define b20_re   B6.x

Definition at line 128 of file llfat_quda.cu.

#define b20_re   B6.x
#define b20_re   B6.x
#define b21_im   B3.w
#define b21_im   B7.y
#define b21_im   B7.y

Definition at line 131 of file llfat_quda.cu.

#define b21_im   B7.y
#define b21_im   B7.y
#define b21_re   B3.z
#define b21_re   B7.x
#define b21_re   B7.x
#define b21_re   B7.x

Definition at line 130 of file llfat_quda.cu.

#define b21_re   B7.x
#define b22_im   B4.y
#define b22_im   B8.y
#define b22_im   B8.y
#define b22_im   B8.y

Definition at line 133 of file llfat_quda.cu.

#define b22_im   B8.y
#define b22_re   B4.x
#define b22_re   B8.x
#define b22_re   B8.x
#define b22_re   B8.x

Definition at line 132 of file llfat_quda.cu.

#define b22_re   B8.x
#define bb00_im   BB0.y

Definition at line 157 of file llfat_quda.cu.

#define bb00_im   BB0.y
#define bb00_im   BB0.y
#define bb00_im   BB0.y
#define bb00_im   BB0.y
#define bb00_re   BB0.x
#define bb00_re   BB0.x

Definition at line 156 of file llfat_quda.cu.

#define bb00_re   BB0.x
#define bb00_re   BB0.x
#define bb00_re   BB0.x
#define bb01_im   BB1.y
#define bb01_im   BB1.y

Definition at line 159 of file llfat_quda.cu.

#define bb01_im   BB1.y
#define bb01_im   BB1.y
#define bb01_im   BB1.y
#define bb01_re   BB1.x
#define bb01_re   BB1.x

Definition at line 158 of file llfat_quda.cu.

#define bb01_re   BB1.x
#define bb01_re   BB1.x
#define bb01_re   BB1.x
#define bb02_im   BB2.y
#define bb02_im   BB2.y

Definition at line 161 of file llfat_quda.cu.

#define bb02_im   BB2.y
#define bb02_im   BB2.y
#define bb02_im   BB2.y
#define bb02_re   BB2.x
#define bb02_re   BB2.x

Definition at line 160 of file llfat_quda.cu.

#define bb02_re   BB2.x
#define bb02_re   BB2.x
#define bb02_re   BB2.x
#define bb10_im   BB3.y
#define bb10_im   BB3.y

Definition at line 163 of file llfat_quda.cu.

#define bb10_im   BB3.y
#define bb10_im   BB3.y
#define bb10_im   BB3.y
#define bb10_re   BB3.x
#define bb10_re   BB3.x

Definition at line 162 of file llfat_quda.cu.

#define bb10_re   BB3.x
#define bb10_re   BB3.x
#define bb10_re   BB3.x
#define bb11_im   BB4.y
#define bb11_im   BB4.y

Definition at line 165 of file llfat_quda.cu.

#define bb11_im   BB4.y
#define bb11_im   BB4.y
#define bb11_im   BB4.y
#define bb11_re   BB4.x
#define bb11_re   BB4.x
#define bb11_re   BB4.x

Definition at line 164 of file llfat_quda.cu.

#define bb11_re   BB4.x
#define bb11_re   BB4.x
#define bb12_im   BB5.y
#define bb12_im   BB5.y
#define bb12_im   BB5.y

Definition at line 167 of file llfat_quda.cu.

#define bb12_im   BB5.y
#define bb12_im   BB5.y
#define bb12_re   BB5.x
#define bb12_re   BB5.x
#define bb12_re   BB5.x

Definition at line 166 of file llfat_quda.cu.

#define bb12_re   BB5.x
#define bb12_re   BB5.x
#define bb20_im   BB6.y
#define bb20_im   BB6.y
#define bb20_im   BB6.y

Definition at line 169 of file llfat_quda.cu.

#define bb20_im   BB6.y
#define bb20_im   BB6.y
#define bb20_re   BB6.x
#define bb20_re   BB6.x
#define bb20_re   BB6.x

Definition at line 168 of file llfat_quda.cu.

#define bb20_re   BB6.x
#define bb20_re   BB6.x
#define bb21_im   BB7.y
#define bb21_im   BB7.y
#define bb21_im   BB7.y

Definition at line 171 of file llfat_quda.cu.

#define bb21_im   BB7.y
#define bb21_im   BB7.y
#define bb21_re   BB7.x
#define bb21_re   BB7.x
#define bb21_re   BB7.x
#define bb21_re   BB7.x

Definition at line 170 of file llfat_quda.cu.

#define bb21_re   BB7.x
#define bb22_im   BB8.y
#define bb22_im   BB8.y
#define bb22_im   BB8.y

Definition at line 173 of file llfat_quda.cu.

#define bb22_im   BB8.y
#define bb22_im   BB8.y
#define bb22_re   BB8.x
#define bb22_re   BB8.x
#define bb22_re   BB8.x
#define bb22_re   BB8.x

Definition at line 172 of file llfat_quda.cu.

#define bb22_re   BB8.x
#define bT00_im   (-b00_im)
#define bT00_im   (-b00_im)
#define bT00_im   (-b00_im)
#define bT00_im   (-b00_im)

Definition at line 197 of file llfat_quda.cu.

#define bT00_im   (-b00_im)
#define bT00_re   (+b00_re)
#define bT00_re   (+b00_re)
#define bT00_re   (+b00_re)
#define bT00_re   (+b00_re)

Definition at line 196 of file llfat_quda.cu.

#define bT00_re   (+b00_re)
#define bT01_im   (-b10_im)
#define bT01_im   (-b10_im)
#define bT01_im   (-b10_im)
#define bT01_im   (-b10_im)

Definition at line 199 of file llfat_quda.cu.

#define bT01_im   (-b10_im)
#define bT01_re   (+b10_re)
#define bT01_re   (+b10_re)
#define bT01_re   (+b10_re)
#define bT01_re   (+b10_re)
#define bT01_re   (+b10_re)

Definition at line 198 of file llfat_quda.cu.

#define bT02_im   (-b20_im)
#define bT02_im   (-b20_im)
#define bT02_im   (-b20_im)
#define bT02_im   (-b20_im)

Definition at line 201 of file llfat_quda.cu.

#define bT02_im   (-b20_im)
#define bT02_re   (+b20_re)
#define bT02_re   (+b20_re)
#define bT02_re   (+b20_re)
#define bT02_re   (+b20_re)

Definition at line 200 of file llfat_quda.cu.

#define bT02_re   (+b20_re)
#define bT10_im   (-b01_im)
#define bT10_im   (-b01_im)
#define bT10_im   (-b01_im)
#define bT10_im   (-b01_im)

Definition at line 203 of file llfat_quda.cu.

#define bT10_im   (-b01_im)
#define bT10_re   (+b01_re)
#define bT10_re   (+b01_re)
#define bT10_re   (+b01_re)
#define bT10_re   (+b01_re)
#define bT10_re   (+b01_re)

Definition at line 202 of file llfat_quda.cu.

#define bT11_im   (-b11_im)
#define bT11_im   (-b11_im)
#define bT11_im   (-b11_im)

Definition at line 205 of file llfat_quda.cu.

#define bT11_im   (-b11_im)
#define bT11_im   (-b11_im)
#define bT11_re   (+b11_re)
#define bT11_re   (+b11_re)
#define bT11_re   (+b11_re)
#define bT11_re   (+b11_re)

Definition at line 204 of file llfat_quda.cu.

#define bT11_re   (+b11_re)
#define bT12_im   (-b21_im)
#define bT12_im   (-b21_im)
#define bT12_im   (-b21_im)

Definition at line 207 of file llfat_quda.cu.

#define bT12_im   (-b21_im)
#define bT12_im   (-b21_im)
#define bT12_re   (+b21_re)
#define bT12_re   (+b21_re)
#define bT12_re   (+b21_re)
#define bT12_re   (+b21_re)

Definition at line 206 of file llfat_quda.cu.

#define bT12_re   (+b21_re)
#define bT20_im   (-b02_im)
#define bT20_im   (-b02_im)
#define bT20_im   (-b02_im)
#define bT20_im   (-b02_im)

Definition at line 209 of file llfat_quda.cu.

#define bT20_im   (-b02_im)
#define bT20_re   (+b02_re)
#define bT20_re   (+b02_re)
#define bT20_re   (+b02_re)

Definition at line 208 of file llfat_quda.cu.

#define bT20_re   (+b02_re)
#define bT20_re   (+b02_re)
#define bT21_im   (-b12_im)

Definition at line 211 of file llfat_quda.cu.

#define bT21_im   (-b12_im)
#define bT21_im   (-b12_im)
#define bT21_im   (-b12_im)
#define bT21_im   (-b12_im)
#define bT21_re   (+b12_re)
#define bT21_re   (+b12_re)
#define bT21_re   (+b12_re)
#define bT21_re   (+b12_re)

Definition at line 210 of file llfat_quda.cu.

#define bT21_re   (+b12_re)
#define bT22_im   (-b22_im)
#define bT22_im   (-b22_im)
#define bT22_im   (-b22_im)
#define bT22_im   (-b22_im)
#define bT22_im   (-b22_im)

Definition at line 213 of file llfat_quda.cu.

#define bT22_re   (+b22_re)
#define bT22_re   (+b22_re)
#define bT22_re   (+b22_re)
#define bT22_re   (+b22_re)
#define bT22_re   (+b22_re)

Definition at line 212 of file llfat_quda.cu.

#define c00_im   C0.y
#define c00_im   C0.y
#define c00_im   C0.y

Definition at line 136 of file llfat_quda.cu.

#define c00_im   C0.y
#define c00_im   C0.y
#define c00_re   C0.x
#define c00_re   C0.x
#define c00_re   C0.x
#define c00_re   C0.x

Definition at line 135 of file llfat_quda.cu.

#define c00_re   C0.x
#define c01_im   C0.w
#define c01_im   C1.y
#define c01_im   C1.y
#define c01_im   C1.y

Definition at line 138 of file llfat_quda.cu.

#define c01_im   C1.y
#define c01_re   C0.z
#define c01_re   C1.x

Definition at line 137 of file llfat_quda.cu.

#define c01_re   C1.x
#define c01_re   C1.x
#define c01_re   C1.x
#define c02_im   C1.y
#define c02_im   C2.y

Definition at line 140 of file llfat_quda.cu.

#define c02_im   C2.y
#define c02_im   C2.y
#define c02_im   C2.y
#define c02_re   C1.x
#define c02_re   C2.x
#define c02_re   C2.x

Definition at line 139 of file llfat_quda.cu.

#define c02_re   C2.x
#define c02_re   C2.x
#define c10_im   C1.w
#define c10_im   C3.y
#define c10_im   C3.y

Definition at line 142 of file llfat_quda.cu.

#define c10_im   C3.y
#define c10_im   C3.y
#define c10_re   C1.z
#define c10_re   C3.x

Definition at line 141 of file llfat_quda.cu.

#define c10_re   C3.x
#define c10_re   C3.x
#define c10_re   C3.x
#define c11_im   C2.y
#define c11_im   C4.y
#define c11_im   C4.y
#define c11_im   C4.y
#define c11_im   C4.y

Definition at line 144 of file llfat_quda.cu.

#define c11_re   C2.x
#define c11_re   C4.x
#define c11_re   C4.x
#define c11_re   C4.x
#define c11_re   C4.x

Definition at line 143 of file llfat_quda.cu.

#define c12_im   C2.w
#define c12_im   C5.y

Definition at line 146 of file llfat_quda.cu.

#define c12_im   C5.y
#define c12_im   C5.y
#define c12_im   C5.y
#define c12_re   C2.z
#define c12_re   C5.x

Definition at line 145 of file llfat_quda.cu.

#define c12_re   C5.x
#define c12_re   C5.x
#define c12_re   C5.x
#define c20_im   C3.y
#define c20_im   C6.y

Definition at line 148 of file llfat_quda.cu.

#define c20_im   C6.y
#define c20_im   C6.y
#define c20_im   C6.y
#define c20_re   C3.x
#define c20_re   C6.x
#define c20_re   C6.x

Definition at line 147 of file llfat_quda.cu.

#define c20_re   C6.x
#define c20_re   C6.x
#define c21_im   C3.w
#define c21_im   C7.y

Definition at line 150 of file llfat_quda.cu.

#define c21_im   C7.y
#define c21_im   C7.y
#define c21_im   C7.y
#define c21_re   C3.z
#define c21_re   C7.x

Definition at line 149 of file llfat_quda.cu.

#define c21_re   C7.x
#define c21_re   C7.x
#define c21_re   C7.x
#define c22_im   C4.y
#define c22_im   C8.y

Definition at line 152 of file llfat_quda.cu.

#define c22_im   C8.y
#define c22_im   C8.y
#define c22_im   C8.y
#define c22_re   C4.x
#define c22_re   C8.x

Definition at line 151 of file llfat_quda.cu.

#define c22_re   C8.x
#define c22_re   C8.x
#define c22_re   C8.x
#define COMPUTE_RECONSTRUCT_SIGN (   sign,
  dir,
  i1,
  i2,
  i3,
  i4 
)
Value:
do { \
sign =1; \
switch(dir){ \
case XUP: \
if ( (i4 & 1) != 0){ \
sign = -1; \
} \
break; \
case YUP: \
if ( ((i4+i1) & 1) != 0){ \
sign = -1; \
} \
break; \
case ZUP: \
if ( ((i4+i1+i2) & 1) != 0){ \
sign = -1; \
} \
break; \
case TUP: \
if (i4 == X4m1 && PtNm1){ \
sign = -1; \
}else if(i4 == -1 && Pt0){ \
sign = -1; \
} \
break; \
} \
}while (0)
#define COMPUTE_RECONSTRUCT_SIGN (   sign,
  dir,
  i1,
  i2,
  i3,
  i4 
)
Value:
do { \
sign =1; \
switch(dir){ \
case XUP: \
if ( (i4 & 1) != 0){ \
sign = -1; \
} \
break; \
case YUP: \
if ( ((i4+i1) & 1) != 0){ \
sign = -1; \
} \
break; \
case ZUP: \
if ( ((i4+i1+i2) & 1) != 0){ \
sign = -1; \
} \
break; \
case TUP: \
if (i4 == X4m1 && PtNm1){ \
sign = -1; \
}else if(i4 == -1 && Pt0){ \
sign = -1; \
} \
break; \
} \
}while (0)

Definition at line 443 of file llfat_quda.cu.

#define COMPUTE_RECONSTRUCT_SIGN (   sign,
  dir,
  i1,
  i2,
  i3,
  i4 
)
Value:
do { \
sign =1; \
switch(dir){ \
case XUP: \
if ( (i4 & 1) != 0){ \
sign = -1; \
} \
break; \
case YUP: \
if ( ((i4+i1) & 1) != 0){ \
sign = -1; \
} \
break; \
case ZUP: \
if ( ((i4+i1+i2) & 1) != 0){ \
sign = -1; \
} \
break; \
case TUP: \
if (i4 == X4m1 && PtNm1){ \
sign = -1; \
}else if(i4 == -1 && Pt0){ \
sign = -1; \
} \
break; \
} \
}while (0)
#define COMPUTE_RECONSTRUCT_SIGN (   sign,
  dir,
  i1,
  i2,
  i3,
  i4 
)
#define COMPUTE_RECONSTRUCT_SIGN (   sign,
  dir,
  i1,
  i2,
  i3,
  i4 
)
#define cT00_im   (-c00_im)
#define cT00_im   (-c00_im)
#define cT00_im   (-c00_im)
#define cT00_im   (-c00_im)
#define cT00_im   (-c00_im)

Definition at line 216 of file llfat_quda.cu.

#define cT00_re   (+c00_re)
#define cT00_re   (+c00_re)
#define cT00_re   (+c00_re)
#define cT00_re   (+c00_re)
#define cT00_re   (+c00_re)

Definition at line 215 of file llfat_quda.cu.

#define cT01_im   (-c10_im)

Definition at line 218 of file llfat_quda.cu.

#define cT01_im   (-c10_im)
#define cT01_im   (-c10_im)
#define cT01_im   (-c10_im)
#define cT01_im   (-c10_im)
#define cT01_re   (+c10_re)

Definition at line 217 of file llfat_quda.cu.

#define cT01_re   (+c10_re)
#define cT01_re   (+c10_re)
#define cT01_re   (+c10_re)
#define cT01_re   (+c10_re)
#define cT02_im   (-c20_im)

Definition at line 220 of file llfat_quda.cu.

#define cT02_im   (-c20_im)
#define cT02_im   (-c20_im)
#define cT02_im   (-c20_im)
#define cT02_im   (-c20_im)
#define cT02_re   (+c20_re)

Definition at line 219 of file llfat_quda.cu.

#define cT02_re   (+c20_re)
#define cT02_re   (+c20_re)
#define cT02_re   (+c20_re)
#define cT02_re   (+c20_re)
#define cT10_im   (-c01_im)

Definition at line 222 of file llfat_quda.cu.

#define cT10_im   (-c01_im)
#define cT10_im   (-c01_im)
#define cT10_im   (-c01_im)
#define cT10_im   (-c01_im)
#define cT10_re   (+c01_re)

Definition at line 221 of file llfat_quda.cu.

#define cT10_re   (+c01_re)
#define cT10_re   (+c01_re)
#define cT10_re   (+c01_re)
#define cT10_re   (+c01_re)
#define cT11_im   (-c11_im)
#define cT11_im   (-c11_im)

Definition at line 224 of file llfat_quda.cu.

#define cT11_im   (-c11_im)
#define cT11_im   (-c11_im)
#define cT11_im   (-c11_im)
#define cT11_re   (+c11_re)
#define cT11_re   (+c11_re)

Definition at line 223 of file llfat_quda.cu.

#define cT11_re   (+c11_re)
#define cT11_re   (+c11_re)
#define cT11_re   (+c11_re)
#define cT12_im   (-c21_im)

Definition at line 226 of file llfat_quda.cu.

#define cT12_im   (-c21_im)
#define cT12_im   (-c21_im)
#define cT12_im   (-c21_im)
#define cT12_im   (-c21_im)
#define cT12_re   (+c21_re)
#define cT12_re   (+c21_re)

Definition at line 225 of file llfat_quda.cu.

#define cT12_re   (+c21_re)
#define cT12_re   (+c21_re)
#define cT12_re   (+c21_re)
#define cT20_im   (-c02_im)
#define cT20_im   (-c02_im)

Definition at line 228 of file llfat_quda.cu.

#define cT20_im   (-c02_im)
#define cT20_im   (-c02_im)
#define cT20_im   (-c02_im)
#define cT20_re   (+c02_re)

Definition at line 227 of file llfat_quda.cu.

#define cT20_re   (+c02_re)
#define cT20_re   (+c02_re)
#define cT20_re   (+c02_re)
#define cT20_re   (+c02_re)
#define cT21_im   (-c12_im)

Definition at line 230 of file llfat_quda.cu.

#define cT21_im   (-c12_im)
#define cT21_im   (-c12_im)
#define cT21_im   (-c12_im)
#define cT21_im   (-c12_im)
#define cT21_re   (+c12_re)

Definition at line 229 of file llfat_quda.cu.

#define cT21_re   (+c12_re)
#define cT21_re   (+c12_re)
#define cT21_re   (+c12_re)
#define cT21_re   (+c12_re)
#define cT22_im   (-c22_im)

Definition at line 232 of file llfat_quda.cu.

#define cT22_im   (-c22_im)
#define cT22_im   (-c22_im)
#define cT22_im   (-c22_im)
#define cT22_im   (-c22_im)
#define cT22_re   (+c22_re)
#define cT22_re   (+c22_re)
#define cT22_re   (+c22_re)

Definition at line 231 of file llfat_quda.cu.

#define cT22_re   (+c22_re)
#define cT22_re   (+c22_re)
#define D1   kparam.D1

Definition at line 14 of file llfat_quda.cu.

#define D1   kparam.D1
#define D1   kparam.D1
#define D1   kparam.D1
#define D1   kparam.D1
#define D1h   kparam.D1h
#define D1h   kparam.D1h
#define D1h   kparam.D1h

Definition at line 18 of file llfat_quda.cu.

#define D1h   kparam.D1h
#define D1h   kparam.D1h
#define D2   kparam.D2

Definition at line 15 of file llfat_quda.cu.

#define D2   kparam.D2
#define D2   kparam.D2
#define D2   kparam.D2
#define D2   kparam.D2
#define D3   kparam.D3
#define D3   kparam.D3

Definition at line 16 of file llfat_quda.cu.

#define D3   kparam.D3
#define D3   kparam.D3
#define D3   kparam.D3
#define D4   kparam.D4
#define D4   kparam.D4

Definition at line 17 of file llfat_quda.cu.

#define D4   kparam.D4
#define D4   kparam.D4
#define D4   kparam.D4
#define DECLARE_NEW_X
#define DECLARE_NEW_X
#define DECLARE_NEW_X
Value:
short new_x1=x1; short new_x2=x2; \
/*short new_x3=x3; */short new_x4=x4;

Definition at line 30 of file llfat_quda.cu.

#define DECLARE_NEW_X
Value:
short new_x1=x1; short new_x2=x2; \
/*short new_x3=x3; */short new_x4=x4;
#define DECLARE_NEW_X
Value:
short new_x1=x1; short new_x2=x2; \
/*short new_x3=x3; */short new_x4=x4;
#define DECLARE_VAR_SIGN

Definition at line 297 of file llfat_quda.cu.

#define DECLARE_VAR_SIGN

Definition at line 297 of file llfat_quda.cu.

#define DECLARE_VAR_SIGN   short sign=1

Definition at line 297 of file llfat_quda.cu.

#define DECLARE_VAR_SIGN   short sign=1

Definition at line 297 of file llfat_quda.cu.

#define DECLARE_VAR_SIGN   short sign=1

Definition at line 29 of file llfat_quda.cu.

#define DECLARE_X_ARRAY
#define DECLARE_X_ARRAY
#define DECLARE_X_ARRAY   int x[4] = {x1,x2,x3, x4};

Definition at line 32 of file llfat_quda.cu.

#define DECLARE_X_ARRAY   int x[4] = {x1,x2,x3, x4};
#define DECLARE_X_ARRAY   int x[4] = {x1,x2,x3, x4};
#define dimcomm   kparam.ghostDim
#define dimcomm   kparam.ghostDim

Definition at line 11 of file llfat_quda.cu.

#define dimcomm   kparam.ghostDim
#define dimcomm   kparam.ghostDim
#define dimcomm   kparam.ghostDim
#define fat00_im   FAT0.y
#define fat00_im   FAT0.y

Definition at line 274 of file llfat_quda.cu.

#define fat00_im   FAT0.y
#define fat00_im   FAT0.y
#define fat00_im   FAT0.y
#define fat00_re   FAT0.x
#define fat00_re   FAT0.x
#define fat00_re   FAT0.x

Definition at line 273 of file llfat_quda.cu.

#define fat00_re   FAT0.x
#define fat00_re   FAT0.x
#define fat01_im   FAT1.y
#define fat01_im   FAT1.y
#define fat01_im   FAT1.y

Definition at line 276 of file llfat_quda.cu.

#define fat01_im   FAT1.y
#define fat01_im   FAT1.y
#define fat01_re   FAT1.x
#define fat01_re   FAT1.x

Definition at line 275 of file llfat_quda.cu.

#define fat01_re   FAT1.x
#define fat01_re   FAT1.x
#define fat01_re   FAT1.x
#define fat02_im   FAT2.y
#define fat02_im   FAT2.y
#define fat02_im   FAT2.y

Definition at line 278 of file llfat_quda.cu.

#define fat02_im   FAT2.y
#define fat02_im   FAT2.y
#define fat02_re   FAT2.x
#define fat02_re   FAT2.x
#define fat02_re   FAT2.x
#define fat02_re   FAT2.x

Definition at line 277 of file llfat_quda.cu.

#define fat02_re   FAT2.x
#define fat10_im   FAT3.y
#define fat10_im   FAT3.y

Definition at line 280 of file llfat_quda.cu.

#define fat10_im   FAT3.y
#define fat10_im   FAT3.y
#define fat10_im   FAT3.y
#define fat10_re   FAT3.x
#define fat10_re   FAT3.x
#define fat10_re   FAT3.x

Definition at line 279 of file llfat_quda.cu.

#define fat10_re   FAT3.x
#define fat10_re   FAT3.x
#define fat11_im   FAT4.y
#define fat11_im   FAT4.y
#define fat11_im   FAT4.y
#define fat11_im   FAT4.y
#define fat11_im   FAT4.y

Definition at line 282 of file llfat_quda.cu.

#define fat11_re   FAT4.x

Definition at line 281 of file llfat_quda.cu.

#define fat11_re   FAT4.x
#define fat11_re   FAT4.x
#define fat11_re   FAT4.x
#define fat11_re   FAT4.x
#define fat12_im   FAT5.y
#define fat12_im   FAT5.y
#define fat12_im   FAT5.y
#define fat12_im   FAT5.y
#define fat12_im   FAT5.y

Definition at line 284 of file llfat_quda.cu.

#define fat12_re   FAT5.x

Definition at line 283 of file llfat_quda.cu.

#define fat12_re   FAT5.x
#define fat12_re   FAT5.x
#define fat12_re   FAT5.x
#define fat12_re   FAT5.x
#define fat20_im   FAT6.y
#define fat20_im   FAT6.y
#define fat20_im   FAT6.y

Definition at line 286 of file llfat_quda.cu.

#define fat20_im   FAT6.y
#define fat20_im   FAT6.y
#define fat20_re   FAT6.x
#define fat20_re   FAT6.x
#define fat20_re   FAT6.x
#define fat20_re   FAT6.x
#define fat20_re   FAT6.x

Definition at line 285 of file llfat_quda.cu.

#define fat21_im   FAT7.y
#define fat21_im   FAT7.y

Definition at line 288 of file llfat_quda.cu.

#define fat21_im   FAT7.y
#define fat21_im   FAT7.y
#define fat21_im   FAT7.y
#define fat21_re   FAT7.x
#define fat21_re   FAT7.x
#define fat21_re   FAT7.x
#define fat21_re   FAT7.x
#define fat21_re   FAT7.x

Definition at line 287 of file llfat_quda.cu.

#define fat22_im   FAT8.y
#define fat22_im   FAT8.y

Definition at line 290 of file llfat_quda.cu.

#define fat22_im   FAT8.y
#define fat22_im   FAT8.y
#define fat22_im   FAT8.y
#define fat22_re   FAT8.x
#define fat22_re   FAT8.x
#define fat22_re   FAT8.x

Definition at line 289 of file llfat_quda.cu.

#define fat22_re   FAT8.x
#define fat22_re   FAT8.x
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE (   mydir1,
  mydir2 
)

Definition at line 650 of file llfat_quda.cu.

#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)

Definition at line 722 of file llfat_quda.cu.

#define LLFAT_COMPUTE_NEW_IDX_MINUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==0)?idx+X1m1:idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = ( (x2==0)?idx+X2X1mX1:idx-X1) >> 1; \
break; \
case 2: \
new_mem_idx = ( (x3==0)?idx+X3X2X1mX2X1:idx-X2X1) >> 1; \
break; \
case 3: \
new_mem_idx = ( (x4==0)?idx+X4X3X2X1mX3X2X1:idx-X3X2X1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_MINUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==0)?idx+X1m1:idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = ( (x2==0)?idx+X2X1mX1:idx-X1) >> 1; \
break; \
case 2: \
new_mem_idx = ( (x3==0)?idx+X3X2X1mX2X1:idx-X2X1) >> 1; \
break; \
case 3: \
new_mem_idx = ( (x4==0)?idx+X4X3X2X1mX3X2X1:idx-X3X2X1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_MINUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==0)?idx+X1m1:idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = ( (x2==0)?idx+X2X1mX1:idx-X1) >> 1; \
break; \
case 2: \
new_mem_idx = ( (x3==0)?idx+X3X2X1mX2X1:idx-X2X1) >> 1; \
break; \
case 3: \
new_mem_idx = ( (x4==0)?idx+X4X3X2X1mX3X2X1:idx-X3X2X1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)

Definition at line 631 of file llfat_quda.cu.

#define LLFAT_COMPUTE_NEW_IDX_MINUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==0)?idx+X1m1:idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = ( (x2==0)?idx+X2X1mX1:idx-X1) >> 1; \
break; \
case 2: \
new_mem_idx = ( (x3==0)?idx+X3X2X1mX2X1:idx-X2X1) >> 1; \
break; \
case 3: \
new_mem_idx = ( (x4==0)?idx+X4X3X2X1mX3X2X1:idx-X3X2X1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_MINUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==0)?idx+X1m1:idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = ( (x2==0)?idx+X2X1mX1:idx-X1) >> 1; \
break; \
case 2: \
new_mem_idx = ( (x3==0)?idx+X3X2X1mX2X1:idx-X2X1) >> 1; \
break; \
case 3: \
new_mem_idx = ( (x4==0)?idx+X4X3X2X1mX3X2X1:idx-X3X2X1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = (idx-E1) >> 1; \
break; \
case 2: \
new_mem_idx = (idx-E2E1) >> 1; \
break; \
case 3: \
new_mem_idx = (idx-E3E2E1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = (idx-E1) >> 1; \
break; \
case 2: \
new_mem_idx = (idx-E2E1) >> 1; \
break; \
case 3: \
new_mem_idx = (idx-E3E2E1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = (idx-E1) >> 1; \
break; \
case 2: \
new_mem_idx = (idx-E2E1) >> 1; \
break; \
case 3: \
new_mem_idx = (idx-E3E2E1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = (idx-E1) >> 1; \
break; \
case 2: \
new_mem_idx = (idx-E2E1) >> 1; \
break; \
case 3: \
new_mem_idx = (idx-E3E2E1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)

Definition at line 703 of file llfat_quda.cu.

#define LLFAT_COMPUTE_NEW_IDX_MINUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx-1) >> 1; \
break; \
case 1: \
new_mem_idx = (idx-E1) >> 1; \
break; \
case 2: \
new_mem_idx = (idx-E2E1) >> 1; \
break; \
case 3: \
new_mem_idx = (idx-E3E2E1) >> 1; \
break; \
} \
UPDATE_COOR_MINUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==X1m1)?idx-X1m1:idx+1)>>1; \
break; \
case 1: \
new_mem_idx = ( (x2==X2m1)?idx-X2X1mX1:idx+X1)>>1; \
break; \
case 2: \
new_mem_idx = ( (x3==X3m1)?idx-X3X2X1mX2X1:idx+X2X1)>>1; \
break; \
case 3: \
new_mem_idx = ( (x4==X4m1)?idx-X4X3X2X1mX3X2X1: idx+X3X2X1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==X1m1)?idx-X1m1:idx+1)>>1; \
break; \
case 1: \
new_mem_idx = ( (x2==X2m1)?idx-X2X1mX1:idx+X1)>>1; \
break; \
case 2: \
new_mem_idx = ( (x3==X3m1)?idx-X3X2X1mX2X1:idx+X2X1)>>1; \
break; \
case 3: \
new_mem_idx = ( (x4==X4m1)?idx-X4X3X2X1mX3X2X1: idx+X3X2X1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==X1m1)?idx-X1m1:idx+1)>>1; \
break; \
case 1: \
new_mem_idx = ( (x2==X2m1)?idx-X2X1mX1:idx+X1)>>1; \
break; \
case 2: \
new_mem_idx = ( (x3==X3m1)?idx-X3X2X1mX2X1:idx+X2X1)>>1; \
break; \
case 3: \
new_mem_idx = ( (x4==X4m1)?idx-X4X3X2X1mX3X2X1: idx+X3X2X1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==X1m1)?idx-X1m1:idx+1)>>1; \
break; \
case 1: \
new_mem_idx = ( (x2==X2m1)?idx-X2X1mX1:idx+X1)>>1; \
break; \
case 2: \
new_mem_idx = ( (x3==X3m1)?idx-X3X2X1mX2X1:idx+X2X1)>>1; \
break; \
case 3: \
new_mem_idx = ( (x4==X4m1)?idx-X4X3X2X1mX3X2X1: idx+X3X2X1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)

Definition at line 612 of file llfat_quda.cu.

#define LLFAT_COMPUTE_NEW_IDX_PLUS (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = ( (x1==X1m1)?idx-X1m1:idx+1)>>1; \
break; \
case 1: \
new_mem_idx = ( (x2==X2m1)?idx-X2X1mX1:idx+X1)>>1; \
break; \
case 2: \
new_mem_idx = ( (x3==X3m1)?idx-X3X2X1mX2X1:idx+X2X1)>>1; \
break; \
case 3: \
new_mem_idx = ( (x4==X4m1)?idx-X4X3X2X1mX3X2X1: idx+X3X2X1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx+1)>>1; \
break; \
case 1: \
new_mem_idx = (idx+E1)>>1; \
break; \
case 2: \
new_mem_idx = (idx+E2E1)>>1; \
break; \
case 3: \
new_mem_idx = (idx+E3E2E1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx+1)>>1; \
break; \
case 1: \
new_mem_idx = (idx+E1)>>1; \
break; \
case 2: \
new_mem_idx = (idx+E2E1)>>1; \
break; \
case 3: \
new_mem_idx = (idx+E3E2E1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx+1)>>1; \
break; \
case 1: \
new_mem_idx = (idx+E1)>>1; \
break; \
case 2: \
new_mem_idx = (idx+E2E1)>>1; \
break; \
case 3: \
new_mem_idx = (idx+E3E2E1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx+1)>>1; \
break; \
case 1: \
new_mem_idx = (idx+E1)>>1; \
break; \
case 2: \
new_mem_idx = (idx+E2E1)>>1; \
break; \
case 3: \
new_mem_idx = (idx+E3E2E1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)
#define LLFAT_COMPUTE_NEW_IDX_PLUS_EX (   mydir,
  idx 
)
Value:
do { \
switch(mydir){ \
case 0: \
new_mem_idx = (idx+1)>>1; \
break; \
case 1: \
new_mem_idx = (idx+E1)>>1; \
break; \
case 2: \
new_mem_idx = (idx+E2E1)>>1; \
break; \
case 3: \
new_mem_idx = (idx+E3E2E1)>>1; \
break; \
} \
UPDATE_COOR_PLUS(mydir, idx); \
}while(0)

Definition at line 685 of file llfat_quda.cu.

#define NUM_FLOATS   5
#define NUM_FLOATS   5
#define NUM_FLOATS   5
#define NUM_FLOATS   5

Definition at line 292 of file llfat_quda.cu.

#define NUM_FLOATS   5
#define tcomm   kparam.ghostDim[3]
#define tcomm   kparam.ghostDim[3]
#define tcomm   kparam.ghostDim[3]

Definition at line 10 of file llfat_quda.cu.

#define tcomm   kparam.ghostDim[3]
#define tcomm   kparam.ghostDim[3]
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]

Definition at line 293 of file llfat_quda.cu.

#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
#define TEMPA0   sd_data[threadIdx.x + 0*blockDim.x]
#define tempa00_im   TEMPA0.y
#define tempa00_im   TEMPA0.y

Definition at line 236 of file llfat_quda.cu.

#define tempa00_im   TEMPA0.y
#define tempa00_im   TEMPA0.y
#define tempa00_im   TEMPA0.y
#define tempa00_re   TEMPA0.x

Definition at line 235 of file llfat_quda.cu.

#define tempa00_re   TEMPA0.x
#define tempa00_re   TEMPA0.x
#define tempa00_re   TEMPA0.x
#define tempa00_re   TEMPA0.x
#define tempa01_im   TEMPA1.y
#define tempa01_im   TEMPA1.y
#define tempa01_im   TEMPA1.y

Definition at line 238 of file llfat_quda.cu.

#define tempa01_im   TEMPA1.y
#define tempa01_im   TEMPA1.y
#define tempa01_re   TEMPA1.x
#define tempa01_re   TEMPA1.x
#define tempa01_re   TEMPA1.x
#define tempa01_re   TEMPA1.x

Definition at line 237 of file llfat_quda.cu.

#define tempa01_re   TEMPA1.x
#define tempa02_im   TEMPA2.y

Definition at line 240 of file llfat_quda.cu.

#define tempa02_im   TEMPA2.y
#define tempa02_im   TEMPA2.y
#define tempa02_im   TEMPA2.y
#define tempa02_im   TEMPA2.y
#define tempa02_re   TEMPA2.x

Definition at line 239 of file llfat_quda.cu.

#define tempa02_re   TEMPA2.x
#define tempa02_re   TEMPA2.x
#define tempa02_re   TEMPA2.x
#define tempa02_re   TEMPA2.x
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]

Definition at line 294 of file llfat_quda.cu.

#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
#define TEMPA1   sd_data[threadIdx.x + 1*blockDim.x ]
#define tempa10_im   TEMPA3.y
#define tempa10_im   TEMPA3.y

Definition at line 242 of file llfat_quda.cu.

#define tempa10_im   TEMPA3.y
#define tempa10_im   TEMPA3.y
#define tempa10_im   TEMPA3.y
#define tempa10_re   TEMPA3.x

Definition at line 241 of file llfat_quda.cu.

#define tempa10_re   TEMPA3.x
#define tempa10_re   TEMPA3.x
#define tempa10_re   TEMPA3.x
#define tempa10_re   TEMPA3.x
#define tempa11_im   TEMPA4.y
#define tempa11_im   TEMPA4.y
#define tempa11_im   TEMPA4.y

Definition at line 244 of file llfat_quda.cu.

#define tempa11_im   TEMPA4.y
#define tempa11_im   TEMPA4.y
#define tempa11_re   TEMPA4.x
#define tempa11_re   TEMPA4.x

Definition at line 243 of file llfat_quda.cu.

#define tempa11_re   TEMPA4.x
#define tempa11_re   TEMPA4.x
#define tempa11_re   TEMPA4.x
#define tempa12_im   TEMPA5.y
#define tempa12_im   TEMPA5.y
#define tempa12_im   TEMPA5.y
#define tempa12_im   TEMPA5.y
#define tempa12_im   TEMPA5.y

Definition at line 246 of file llfat_quda.cu.

#define tempa12_re   TEMPA5.x
#define tempa12_re   TEMPA5.x
#define tempa12_re   TEMPA5.x

Definition at line 245 of file llfat_quda.cu.

#define tempa12_re   TEMPA5.x
#define tempa12_re   TEMPA5.x
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]
#define TEMPA2   sd_data[threadIdx.x + 2*blockDim.x ]

Definition at line 295 of file llfat_quda.cu.

#define tempa20_im   TEMPA6.y
#define tempa20_im   TEMPA6.y

Definition at line 248 of file llfat_quda.cu.

#define tempa20_im   TEMPA6.y
#define tempa20_im   TEMPA6.y
#define tempa20_im   TEMPA6.y
#define tempa20_re   TEMPA6.x
#define tempa20_re   TEMPA6.x
#define tempa20_re   TEMPA6.x
#define tempa20_re   TEMPA6.x
#define tempa20_re   TEMPA6.x

Definition at line 247 of file llfat_quda.cu.

#define tempa21_im   TEMPA7.y

Definition at line 250 of file llfat_quda.cu.

#define tempa21_im   TEMPA7.y
#define tempa21_im   TEMPA7.y
#define tempa21_im   TEMPA7.y
#define tempa21_im   TEMPA7.y
#define tempa21_re   TEMPA7.x
#define tempa21_re   TEMPA7.x
#define tempa21_re   TEMPA7.x

Definition at line 249 of file llfat_quda.cu.

#define tempa21_re   TEMPA7.x
#define tempa21_re   TEMPA7.x
#define tempa22_im   TEMPA8.y
#define tempa22_im   TEMPA8.y
#define tempa22_im   TEMPA8.y
#define tempa22_im   TEMPA8.y

Definition at line 252 of file llfat_quda.cu.

#define tempa22_im   TEMPA8.y
#define tempa22_re   TEMPA8.x
#define tempa22_re   TEMPA8.x
#define tempa22_re   TEMPA8.x
#define tempa22_re   TEMPA8.x
#define tempa22_re   TEMPA8.x

Definition at line 251 of file llfat_quda.cu.

#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]

Definition at line 296 of file llfat_quda.cu.

#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
#define TEMPA3   sd_data[threadIdx.x + 3*blockDim.x ]
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]

Definition at line 297 of file llfat_quda.cu.

#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
#define TEMPA4   sd_data[threadIdx.x + 4*blockDim.x ]
#define tempb00_im   TEMPB0.y
#define tempb00_im   TEMPB0.y
#define tempb00_im   TEMPB0.y
#define tempb00_im   TEMPB0.y
#define tempb00_im   TEMPB0.y

Definition at line 255 of file llfat_quda.cu.

#define tempb00_re   TEMPB0.x
#define tempb00_re   TEMPB0.x
#define tempb00_re   TEMPB0.x
#define tempb00_re   TEMPB0.x
#define tempb00_re   TEMPB0.x

Definition at line 254 of file llfat_quda.cu.

#define tempb01_im   TEMPB1.y
#define tempb01_im   TEMPB1.y

Definition at line 257 of file llfat_quda.cu.

#define tempb01_im   TEMPB1.y
#define tempb01_im   TEMPB1.y
#define tempb01_im   TEMPB1.y
#define tempb01_re   TEMPB1.x
#define tempb01_re   TEMPB1.x
#define tempb01_re   TEMPB1.x
#define tempb01_re   TEMPB1.x

Definition at line 256 of file llfat_quda.cu.

#define tempb01_re   TEMPB1.x
#define tempb02_im   TEMPB2.y

Definition at line 259 of file llfat_quda.cu.

#define tempb02_im   TEMPB2.y
#define tempb02_im   TEMPB2.y
#define tempb02_im   TEMPB2.y
#define tempb02_im   TEMPB2.y
#define tempb02_re   TEMPB2.x
#define tempb02_re   TEMPB2.x
#define tempb02_re   TEMPB2.x
#define tempb02_re   TEMPB2.x

Definition at line 258 of file llfat_quda.cu.

#define tempb02_re   TEMPB2.x
#define tempb10_im   TEMPB3.y
#define tempb10_im   TEMPB3.y
#define tempb10_im   TEMPB3.y

Definition at line 261 of file llfat_quda.cu.

#define tempb10_im   TEMPB3.y
#define tempb10_im   TEMPB3.y
#define tempb10_re   TEMPB3.x
#define tempb10_re   TEMPB3.x
#define tempb10_re   TEMPB3.x

Definition at line 260 of file llfat_quda.cu.

#define tempb10_re   TEMPB3.x
#define tempb10_re   TEMPB3.x
#define tempb11_im   TEMPB4.y

Definition at line 263 of file llfat_quda.cu.

#define tempb11_im   TEMPB4.y
#define tempb11_im   TEMPB4.y
#define tempb11_im   TEMPB4.y
#define tempb11_im   TEMPB4.y
#define tempb11_re   TEMPB4.x

Definition at line 262 of file llfat_quda.cu.

#define tempb11_re   TEMPB4.x
#define tempb11_re   TEMPB4.x
#define tempb11_re   TEMPB4.x
#define tempb11_re   TEMPB4.x
#define tempb12_im   TEMPB5.y
#define tempb12_im   TEMPB5.y
#define tempb12_im   TEMPB5.y

Definition at line 265 of file llfat_quda.cu.

#define tempb12_im   TEMPB5.y
#define tempb12_im   TEMPB5.y
#define tempb12_re   TEMPB5.x
#define tempb12_re   TEMPB5.x
#define tempb12_re   TEMPB5.x
#define tempb12_re   TEMPB5.x
#define tempb12_re   TEMPB5.x

Definition at line 264 of file llfat_quda.cu.

#define tempb20_im   TEMPB6.y
#define tempb20_im   TEMPB6.y
#define tempb20_im   TEMPB6.y

Definition at line 267 of file llfat_quda.cu.

#define tempb20_im   TEMPB6.y
#define tempb20_im   TEMPB6.y
#define tempb20_re   TEMPB6.x
#define tempb20_re   TEMPB6.x

Definition at line 266 of file llfat_quda.cu.

#define tempb20_re   TEMPB6.x
#define tempb20_re   TEMPB6.x
#define tempb20_re   TEMPB6.x
#define tempb21_im   TEMPB7.y

Definition at line 269 of file llfat_quda.cu.

#define tempb21_im   TEMPB7.y
#define tempb21_im   TEMPB7.y
#define tempb21_im   TEMPB7.y
#define tempb21_im   TEMPB7.y
#define tempb21_re   TEMPB7.x
#define tempb21_re   TEMPB7.x

Definition at line 268 of file llfat_quda.cu.

#define tempb21_re   TEMPB7.x
#define tempb21_re   TEMPB7.x
#define tempb21_re   TEMPB7.x
#define tempb22_im   TEMPB8.y
#define tempb22_im   TEMPB8.y
#define tempb22_im   TEMPB8.y
#define tempb22_im   TEMPB8.y

Definition at line 271 of file llfat_quda.cu.

#define tempb22_im   TEMPB8.y
#define tempb22_re   TEMPB8.x
#define tempb22_re   TEMPB8.x

Definition at line 270 of file llfat_quda.cu.

#define tempb22_re   TEMPB8.x
#define tempb22_re   TEMPB8.x
#define tempb22_re   TEMPB8.x
#define UPDATE_COOR_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define UPDATE_COOR_LOWER_STAPLE (   mydir1,
  mydir2 
)

Definition at line 341 of file llfat_quda.cu.

#define UPDATE_COOR_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define UPDATE_COOR_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define UPDATE_COOR_LOWER_STAPLE (   mydir1,
  mydir2 
)
#define UPDATE_COOR_LOWER_STAPLE_DIAG (   nu,
  mu,
  dir1,
  dir2 
)
Value:
do { \
int new_x[4]; \
new_x[3] = x4; new_x[1] = x2; new_x[0] = x1; \
new_x[nu] = -1; \
new_x[mu] = 0; \
new_x1 = new_x[0]; \
new_x2 = new_x[1]; \
new_x4 = new_x[3]; \
}while(0)
#define UPDATE_COOR_LOWER_STAPLE_DIAG (   nu,
  mu,
  dir1,
  dir2 
)
Value:
do { \
int new_x[4]; \
new_x[3] = x4; new_x[1] = x2; new_x[0] = x1; \
new_x[nu] = -1; \
new_x[mu] = 0; \
new_x1 = new_x[0]; \
new_x2 = new_x[1]; \
new_x4 = new_x[3]; \
}while(0)
#define UPDATE_COOR_LOWER_STAPLE_DIAG (   nu,
  mu,
  dir1,
  dir2 
)
Value:
do { \
int new_x[4]; \
new_x[3] = x4; new_x[1] = x2; new_x[0] = x1; \
new_x[nu] = -1; \
new_x[mu] = 0; \
new_x1 = new_x[0]; \
new_x2 = new_x[1]; \
new_x4 = new_x[3]; \
}while(0)

Definition at line 403 of file llfat_quda.cu.

#define UPDATE_COOR_LOWER_STAPLE_DIAG (   nu,
  mu,
  dir1,
  dir2 
)
#define UPDATE_COOR_LOWER_STAPLE_DIAG (   nu,
  mu,
  dir1,
  dir2 
)
#define UPDATE_COOR_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir1){ \
case 0: \
new_x1 = x1 - 1; \
break; \
case 1: \
new_x2 = x2 - 1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4 - 1; \
break; \
} \
switch(mydir2){ \
case 0: \
new_x1 = x1+1; \
break; \
case 1: \
new_x2 = x2+1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4+1; \
break; \
} \
}while(0)

Definition at line 413 of file llfat_quda.cu.

#define UPDATE_COOR_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir1){ \
case 0: \
new_x1 = x1 - 1; \
break; \
case 1: \
new_x2 = x2 - 1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4 - 1; \
break; \
} \
switch(mydir2){ \
case 0: \
new_x1 = x1+1; \
break; \
case 1: \
new_x2 = x2+1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4+1; \
break; \
} \
}while(0)
#define UPDATE_COOR_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir1){ \
case 0: \
new_x1 = x1 - 1; \
break; \
case 1: \
new_x2 = x2 - 1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4 - 1; \
break; \
} \
switch(mydir2){ \
case 0: \
new_x1 = x1+1; \
break; \
case 1: \
new_x2 = x2+1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4+1; \
break; \
} \
}while(0)
#define UPDATE_COOR_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
#define UPDATE_COOR_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)
#define UPDATE_COOR_MINUS (   mydir,
  idx 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir){ \
case 0: \
new_x1 = x1-1; \
break; \
case 1: \
new_x2 = x2-1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4-1; \
break; \
} \
}while(0)

Definition at line 324 of file llfat_quda.cu.

#define UPDATE_COOR_MINUS (   mydir,
  idx 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir){ \
case 0: \
new_x1 = x1-1; \
break; \
case 1: \
new_x2 = x2-1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4-1; \
break; \
} \
}while(0)
#define UPDATE_COOR_MINUS (   mydir,
  idx 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir){ \
case 0: \
new_x1 = x1-1; \
break; \
case 1: \
new_x2 = x2-1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4-1; \
break; \
} \
}while(0)
#define UPDATE_COOR_MINUS (   mydir,
  idx 
)
#define UPDATE_COOR_MINUS (   mydir,
  idx 
)
#define UPDATE_COOR_PLUS (   mydir,
  idx 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir){ \
case 0: \
new_x1 = x1+1; \
break; \
case 1: \
new_x2 = x2+1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4+1; \
break; \
} \
}while(0)
#define UPDATE_COOR_PLUS (   mydir,
  idx 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir){ \
case 0: \
new_x1 = x1+1; \
break; \
case 1: \
new_x2 = x2+1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4+1; \
break; \
} \
}while(0)

Definition at line 307 of file llfat_quda.cu.

#define UPDATE_COOR_PLUS (   mydir,
  idx 
)
Value:
do { \
new_x1 = x1; new_x2 = x2; new_x4 = x4; \
switch(mydir){ \
case 0: \
new_x1 = x1+1; \
break; \
case 1: \
new_x2 = x2+1; \
break; \
case 2: \
break; \
case 3: \
new_x4 = x4+1; \
break; \
} \
}while(0)
#define UPDATE_COOR_PLUS (   mydir,
  idx 
)
#define UPDATE_COOR_PLUS (   mydir,
  idx 
)
#define Vsh_t   ghostFace[3]
#define Vsh_t   ghostFace[3]

Definition at line 5 of file llfat_quda.cu.

#define Vsh_t   ghostFace[3]
#define Vsh_t   ghostFace[3]
#define Vsh_t   ghostFace[3]
#define Vsh_x   ghostFace[0]
#define Vsh_x   ghostFace[0]
#define Vsh_x   ghostFace[0]

Definition at line 2 of file llfat_quda.cu.

#define Vsh_x   ghostFace[0]
#define Vsh_x   ghostFace[0]
#define Vsh_y   ghostFace[1]

Definition at line 3 of file llfat_quda.cu.

#define Vsh_y   ghostFace[1]
#define Vsh_y   ghostFace[1]
#define Vsh_y   ghostFace[1]
#define Vsh_y   ghostFace[1]
#define Vsh_z   ghostFace[2]

Definition at line 4 of file llfat_quda.cu.

#define Vsh_z   ghostFace[2]
#define Vsh_z   ghostFace[2]
#define Vsh_z   ghostFace[2]
#define Vsh_z   ghostFace[2]
#define xcomm   kparam.ghostDim[0]
#define xcomm   kparam.ghostDim[0]
#define xcomm   kparam.ghostDim[0]
#define xcomm   kparam.ghostDim[0]

Definition at line 7 of file llfat_quda.cu.

#define xcomm   kparam.ghostDim[0]
#define ycomm   kparam.ghostDim[1]
#define ycomm   kparam.ghostDim[1]
#define ycomm   kparam.ghostDim[1]

Definition at line 8 of file llfat_quda.cu.

#define ycomm   kparam.ghostDim[1]
#define ycomm   kparam.ghostDim[1]
#define zcomm   kparam.ghostDim[2]

Definition at line 9 of file llfat_quda.cu.

#define zcomm   kparam.ghostDim[2]
#define zcomm   kparam.ghostDim[2]
#define zcomm   kparam.ghostDim[2]
#define zcomm   kparam.ghostDim[2]

Function Documentation

COMPUTE_RECONSTRUCT_SIGN ( sign  ,
nu  ,
x1  ,
x2  ,
x3  ,
x4   
)
Initial value:
COMPUTE_RECONSTRUCT_SIGN ( sign  ,
mu  ,
new_x1  ,
new_x2  ,
new_x3  ,
new_x4   
)
COMPUTE_RECONSTRUCT_SIGN ( sign  ,
nu  ,
new_x1  ,
new_x2  ,
new_x3  ,
new_x4   
)
COMPUTE_RECONSTRUCT_SIGN ( sign  ,
nu  ,
(x1-2)  ,
(x2-2)  ,
(x3-2)  ,
(x4-2)   
)
Initial value:
COMPUTE_RECONSTRUCT_SIGN ( sign  ,
mu  ,
(new_x1-2)  ,
(new_x2-2)  ,
(new_x3-2)  ,
(new_x4-2)   
)
COMPUTE_RECONSTRUCT_SIGN ( sign  ,
nu  ,
(new_x1-2)  ,
(new_x2-2)  ,
(new_x3-2)  ,
(new_x4-2)   
)
for ( )

Definition at line 1090 of file llfat_core.h.

if ( kparam.  kernel_type = =LLFAT_EXTERIOR_KERNEL_FWD_X &&x1!=X1m1)

Definition at line 889 of file llfat_core.h.

if ( save_staple  )

Definition at line 975 of file llfat_core.h.

if ( mem_idx >=  Vh)

Definition at line 1069 of file llfat_core.h.

if ( mem_idx >=kparam.  threads)
if ( x1==1||x1==X1+2||x2==1||x2==X2+2||x3==1||x3==X3+2||x4==1||x4==X4+2)

Definition at line 1225 of file llfat_core.h.

if ( sid >=2 *kparam.  threads)
if ( idx >=kparam.  threads)

Definition at line 1381 of file llfat_core.h.

LLFAT_ADD_SU3_MATRIX ( ,
staple  ,
staple   
)
LLFAT_ADD_SU3_MATRIX ( ,
staple  ,
staple   
)
LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE ( nu  ,
mu   
)
LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX ( nu  ,
mu   
)
LLFAT_COMPUTE_NEW_IDX_MINUS ( nu  ,
X   
)
LLFAT_COMPUTE_NEW_IDX_MINUS_EX ( nu  ,
X   
)
LLFAT_COMPUTE_NEW_IDX_PLUS ( nu  ,
X   
)
LLFAT_COMPUTE_NEW_IDX_PLUS ( mu  ,
X   
)
LLFAT_COMPUTE_NEW_IDX_PLUS_EX ( nu  ,
X   
)
LLFAT_COMPUTE_NEW_IDX_PLUS_EX ( mu  ,
X   
)
template<int mu, int nu, int odd_bit>
__global__ void LLFAT_KERNEL ( do_siteComputeGenStapleParity  ,
RECONSTRUCT   
)
template<int mu, int nu, int odd_bit, int save_staple>
__global__ void LLFAT_KERNEL ( do_computeGenStapleFieldParity  ,
RECONSTRUCT   
)
__global__ void LLFAT_KERNEL ( llfatOneLink  ,
RECONSTRUCT   
) const
template<int mu, int nu, int odd_bit>
__global__ void LLFAT_KERNEL_EX ( do_siteComputeGenStapleParity  ,
RECONSTRUCT   
)
template<int mu, int nu, int odd_bit, int save_staple>
__global__ void LLFAT_KERNEL_EX ( do_computeGenStapleFieldParity  ,
RECONSTRUCT   
)
__global__ void LLFAT_KERNEL_EX ( llfatOneLink  ,
RECONSTRUCT   
) const
LOAD_EVEN_FAT_MATRIX ( mu  ,
mem_idx   
)
LOAD_EVEN_SITE_MATRIX ( nu  ,
new_mem_idx  ,
 
)
LOAD_ODD_MULINK_MATRIX ( ,
new_mem_idx  ,
BB   
)
LOAD_ODD_SITE_MATRIX ( mu  ,
new_mem_idx  ,
 
)
LOAD_ODD_SITE_MATRIX ( nu  ,
new_mem_idx  ,
 
)
LOAD_ODD_SITE_MATRIX ( nu  ,
(new_mem_idx ,
 
)
Initial value:
LOAD_ODD_SITE_MATRIX ( mu  ,
(new_mem_idx ,
 
)
LOAD_ODD_SITE_MATRIX ( nu  ,
new_mem_idx  ,
 
)
Initial value:
MULT_SU3_AN ( ,
,
tempa   
)
MULT_SU3_AN ( ,
bb  ,
tempa   
)
MULT_SU3_NA ( tempa  ,
,
staple   
)
MULT_SU3_NN ( ,
,
tempa   
)
MULT_SU3_NN ( tempa  ,
,
 
)
MULT_SU3_NN ( ,
bb  ,
tempa   
)
MULT_SU3_NN ( tempa  ,
,
 
)
RECONSTRUCT_SITE_LINK ( sign  ,
 
)
RECONSTRUCT_SITE_LINK ( sign  ,
 
)
RECONSTRUCT_SITE_LINK ( sign  ,
 
)
WRITE_STAPLE_MATRIX ( staple_even  ,
mem_idx   
)

Variable Documentation

__global__ void const FloatN FloatM FloatM Float coeff0

Definition at line 1054 of file llfat_core.h.

__global__ void const FloatN FloatM FloatM Float Float coeff5
Initial value:

Definition at line 1057 of file llfat_core.h.

DECLARE_NEW_X

Definition at line 794 of file llfat_core.h.

DECLARE_VAR_SIGN

Definition at line 793 of file llfat_core.h.

DECLARE_X_ARRAY

Definition at line 795 of file llfat_core.h.

else
Initial value:
{
MULT_SU3_NA(tempa, c, tempb)

Definition at line 977 of file llfat_core.h.

__global__ void const FloatN FloatM * fatlink_even

Definition at line 758 of file llfat_core.h.

__global__ void const FloatN FloatM FloatM * fatlink_odd

Definition at line 758 of file llfat_core.h.

int idx = sid

Definition at line 1373 of file llfat_core.h.

__global__ void const FloatN FloatM FloatM Float Float llfat_kernel_param_t kparam
Initial value:
{
__shared__ FloatM sd_data[NUM_FLOATS*64]

Definition at line 762 of file llfat_core.h.

Definition at line 770 of file llfat_core.h.

__global__ void FloatM const FloatN const FloatN FloatM FloatM const FloatM * mulink_even

Definition at line 901 of file llfat_core.h.

__global__ void FloatM const FloatN const FloatN FloatM FloatM const FloatM const FloatM * mulink_odd

Definition at line 901 of file llfat_core.h.

FloatM * my_fatlink = fatlink_even

Definition at line 1059 of file llfat_core.h.

my_sitelink = sitelink_even

Definition at line 1067 of file llfat_core.h.

__global__ void FloatM const FloatN const FloatN FloatM FloatM const FloatM const FloatM Float mycoeff

Definition at line 758 of file llfat_core.h.

int new_mem_idx

Definition at line 792 of file llfat_core.h.

short odd_bit = 0

Definition at line 1064 of file llfat_core.h.

return

Definition at line 896 of file llfat_core.h.

Definition at line 1060 of file llfat_core.h.

__global__ void FloatM const FloatN * sitelink_even

Definition at line 758 of file llfat_core.h.

__global__ void const FloatN * sitelink_odd

Definition at line 758 of file llfat_core.h.

FloatM STAPLE0

Definition at line 767 of file llfat_core.h.

FloatM STAPLE1

Definition at line 767 of file llfat_core.h.

FloatM STAPLE2

Definition at line 767 of file llfat_core.h.

FloatM STAPLE3

Definition at line 767 of file llfat_core.h.

FloatM STAPLE4

Definition at line 767 of file llfat_core.h.

FloatM STAPLE5

Definition at line 767 of file llfat_core.h.

FloatM STAPLE6

Definition at line 767 of file llfat_core.h.

FloatM STAPLE7

Definition at line 767 of file llfat_core.h.

FloatM STAPLE8

Definition at line 767 of file llfat_core.h.

__global__ void FloatM * staple_odd

Definition at line 758 of file llfat_core.h.

FloatM TEMPA5

Definition at line 766 of file llfat_core.h.

FloatM TEMPA6

Definition at line 766 of file llfat_core.h.

FloatM TEMPA7

Definition at line 766 of file llfat_core.h.

FloatM TEMPA8

Definition at line 766 of file llfat_core.h.

FloatM TEMPB0

Definition at line 910 of file llfat_core.h.

FloatM TEMPB1

Definition at line 910 of file llfat_core.h.

FloatM TEMPB2

Definition at line 910 of file llfat_core.h.

FloatM TEMPB3

Definition at line 910 of file llfat_core.h.

FloatM TEMPB4

Definition at line 910 of file llfat_core.h.

FloatM TEMPB5

Definition at line 910 of file llfat_core.h.

FloatM TEMPB6

Definition at line 910 of file llfat_core.h.

FloatM TEMPB7

Definition at line 910 of file llfat_core.h.

FloatM TEMPB8

Definition at line 910 of file llfat_core.h.

int X = 2*mem_idx + x1odd

Definition at line 781 of file llfat_core.h.

x1 = 2*x1h + x1odd

Definition at line 780 of file llfat_core.h.

short x1h = mem_idx - z1*X1h

Definition at line 773 of file llfat_core.h.

short x1odd = (x2 + x3 + x4 + odd_bit) & 1

Definition at line 779 of file llfat_core.h.

x2 = z1 - z2*X2

Definition at line 775 of file llfat_core.h.

x3 = z2 - x4*X3

Definition at line 777 of file llfat_core.h.

x4 = z2 / X3

Definition at line 776 of file llfat_core.h.

int z1 = mem_idx / X1h

Definition at line 772 of file llfat_core.h.

int z2 = z1 / X2

Definition at line 774 of file llfat_core.h.