QUDA v0.4.0
A library for QCD on GPUs
Defines | Functions | Variables
quda/lib/llfat_core.h File Reference

Go to the source code of this file.

Defines

#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
int int int save_staple
__global__ void 
LLFAT_KERNEL (do_computeGenStapleFieldParity, RECONSTRUCT)(FloatM *staple_even
int int odd_bit __global__ void LLFAT_KERNEL_EX (do_siteComputeGenStapleParity, RECONSTRUCT)(FloatM *staple_even
int int int save_staple
__global__ void 
LLFAT_KERNEL_EX (do_computeGenStapleFieldParity, RECONSTRUCT)(FloatM *staple_even

Variables

__global__ void FloatM * staple_odd
__global__ void FloatM FloatN * sitelink_even
__global__ void FloatM FloatN
FloatN * 
sitelink_odd
__global__ void FloatM FloatN
FloatN FloatM * 
fatlink_even
__global__ void FloatM FloatN
FloatN FloatM FloatM * 
fatlink_odd
__global__ void FloatM FloatN
FloatN FloatM FloatM Float 
mycoeff
int nu
int int odd_bit
int int int save_staple
__global__ void FloatM FloatN
FloatN FloatM FloatM FloatM * 
mulink_even
int int int save_staple
__global__ void FloatM FloatN
FloatN FloatM FloatM FloatM
FloatM * 
mulink_odd

Define Documentation

#define a00_im   A0.y

Definition at line 96 of file llfat_core.h.

#define a00_re   A0.x

Definition at line 95 of file llfat_core.h.

#define a01_im   A1.y

Definition at line 98 of file llfat_core.h.

#define a01_re   A1.x

Definition at line 97 of file llfat_core.h.

#define a02_im   A2.y

Definition at line 100 of file llfat_core.h.

#define a02_re   A2.x

Definition at line 99 of file llfat_core.h.

#define a10_im   A3.y

Definition at line 102 of file llfat_core.h.

#define a10_re   A3.x

Definition at line 101 of file llfat_core.h.

#define a11_im   A4.y

Definition at line 104 of file llfat_core.h.

#define a11_re   A4.x

Definition at line 103 of file llfat_core.h.

#define a12_im   A5.y

Definition at line 106 of file llfat_core.h.

#define a12_re   A5.x

Definition at line 105 of file llfat_core.h.

#define a20_im   A6.y

Definition at line 109 of file llfat_core.h.

#define a20_re   A6.x

Definition at line 108 of file llfat_core.h.

#define a21_im   A7.y

Definition at line 111 of file llfat_core.h.

#define a21_re   A7.x

Definition at line 110 of file llfat_core.h.

#define a22_im   A8.y

Definition at line 113 of file llfat_core.h.

#define a22_re   A8.x

Definition at line 112 of file llfat_core.h.

#define aT00_im   (-a00_im)

Definition at line 177 of file llfat_core.h.

#define aT00_re   (+a00_re)

Definition at line 176 of file llfat_core.h.

#define aT01_im   (-a10_im)

Definition at line 179 of file llfat_core.h.

#define aT01_re   (+a10_re)

Definition at line 178 of file llfat_core.h.

#define aT02_im   (-a20_im)

Definition at line 181 of file llfat_core.h.

#define aT02_re   (+a20_re)

Definition at line 180 of file llfat_core.h.

#define aT10_im   (-a01_im)

Definition at line 183 of file llfat_core.h.

#define aT10_re   (+a01_re)

Definition at line 182 of file llfat_core.h.

#define aT11_im   (-a11_im)

Definition at line 185 of file llfat_core.h.

#define aT11_re   (+a11_re)

Definition at line 184 of file llfat_core.h.

#define aT12_im   (-a21_im)

Definition at line 187 of file llfat_core.h.

#define aT12_re   (+a21_re)

Definition at line 186 of file llfat_core.h.

#define aT20_im   (-a02_im)

Definition at line 189 of file llfat_core.h.

#define aT20_re   (+a02_re)

Definition at line 188 of file llfat_core.h.

#define aT21_im   (-a12_im)

Definition at line 191 of file llfat_core.h.

#define aT21_re   (+a12_re)

Definition at line 190 of file llfat_core.h.

#define aT22_im   (-a22_im)

Definition at line 193 of file llfat_core.h.

#define aT22_re   (+a22_re)

Definition at line 192 of file llfat_core.h.

#define b00_im   B0.y

Definition at line 116 of file llfat_core.h.

#define b00_re   B0.x

Definition at line 115 of file llfat_core.h.

#define b01_im   B1.y

Definition at line 118 of file llfat_core.h.

#define b01_re   B1.x

Definition at line 117 of file llfat_core.h.

#define b02_im   B2.y

Definition at line 120 of file llfat_core.h.

#define b02_re   B2.x

Definition at line 119 of file llfat_core.h.

#define b10_im   B3.y

Definition at line 122 of file llfat_core.h.

#define b10_re   B3.x

Definition at line 121 of file llfat_core.h.

#define b11_im   B4.y

Definition at line 124 of file llfat_core.h.

#define b11_re   B4.x

Definition at line 123 of file llfat_core.h.

#define b12_im   B5.y

Definition at line 126 of file llfat_core.h.

#define b12_re   B5.x

Definition at line 125 of file llfat_core.h.

#define b20_im   B6.y

Definition at line 128 of file llfat_core.h.

#define b20_re   B6.x

Definition at line 127 of file llfat_core.h.

#define b21_im   B7.y

Definition at line 130 of file llfat_core.h.

#define b21_re   B7.x

Definition at line 129 of file llfat_core.h.

#define b22_im   B8.y

Definition at line 132 of file llfat_core.h.

#define b22_re   B8.x

Definition at line 131 of file llfat_core.h.

#define bb00_im   BB0.y

Definition at line 156 of file llfat_core.h.

#define bb00_re   BB0.x

Definition at line 155 of file llfat_core.h.

#define bb01_im   BB1.y

Definition at line 158 of file llfat_core.h.

#define bb01_re   BB1.x

Definition at line 157 of file llfat_core.h.

#define bb02_im   BB2.y

Definition at line 160 of file llfat_core.h.

#define bb02_re   BB2.x

Definition at line 159 of file llfat_core.h.

#define bb10_im   BB3.y

Definition at line 162 of file llfat_core.h.

#define bb10_re   BB3.x

Definition at line 161 of file llfat_core.h.

#define bb11_im   BB4.y

Definition at line 164 of file llfat_core.h.

#define bb11_re   BB4.x

Definition at line 163 of file llfat_core.h.

#define bb12_im   BB5.y

Definition at line 166 of file llfat_core.h.

#define bb12_re   BB5.x

Definition at line 165 of file llfat_core.h.

#define bb20_im   BB6.y

Definition at line 168 of file llfat_core.h.

#define bb20_re   BB6.x

Definition at line 167 of file llfat_core.h.

#define bb21_im   BB7.y

Definition at line 170 of file llfat_core.h.

#define bb21_re   BB7.x

Definition at line 169 of file llfat_core.h.

#define bb22_im   BB8.y

Definition at line 172 of file llfat_core.h.

#define bb22_re   BB8.x

Definition at line 171 of file llfat_core.h.

#define bT00_im   (-b00_im)

Definition at line 196 of file llfat_core.h.

#define bT00_re   (+b00_re)

Definition at line 195 of file llfat_core.h.

#define bT01_im   (-b10_im)

Definition at line 198 of file llfat_core.h.

#define bT01_re   (+b10_re)

Definition at line 197 of file llfat_core.h.

#define bT02_im   (-b20_im)

Definition at line 200 of file llfat_core.h.

#define bT02_re   (+b20_re)

Definition at line 199 of file llfat_core.h.

#define bT10_im   (-b01_im)

Definition at line 202 of file llfat_core.h.

#define bT10_re   (+b01_re)

Definition at line 201 of file llfat_core.h.

#define bT11_im   (-b11_im)

Definition at line 204 of file llfat_core.h.

#define bT11_re   (+b11_re)

Definition at line 203 of file llfat_core.h.

#define bT12_im   (-b21_im)

Definition at line 206 of file llfat_core.h.

#define bT12_re   (+b21_re)

Definition at line 205 of file llfat_core.h.

#define bT20_im   (-b02_im)

Definition at line 208 of file llfat_core.h.

#define bT20_re   (+b02_re)

Definition at line 207 of file llfat_core.h.

#define bT21_im   (-b12_im)

Definition at line 210 of file llfat_core.h.

#define bT21_re   (+b12_re)

Definition at line 209 of file llfat_core.h.

#define bT22_im   (-b22_im)

Definition at line 212 of file llfat_core.h.

#define bT22_re   (+b22_re)

Definition at line 211 of file llfat_core.h.

#define c00_im   C0.y

Definition at line 135 of file llfat_core.h.

#define c00_re   C0.x

Definition at line 134 of file llfat_core.h.

#define c01_im   C1.y

Definition at line 137 of file llfat_core.h.

#define c01_re   C1.x

Definition at line 136 of file llfat_core.h.

#define c02_im   C2.y

Definition at line 139 of file llfat_core.h.

#define c02_re   C2.x

Definition at line 138 of file llfat_core.h.

#define c10_im   C3.y

Definition at line 141 of file llfat_core.h.

#define c10_re   C3.x

Definition at line 140 of file llfat_core.h.

#define c11_im   C4.y

Definition at line 143 of file llfat_core.h.

#define c11_re   C4.x

Definition at line 142 of file llfat_core.h.

#define c12_im   C5.y

Definition at line 145 of file llfat_core.h.

#define c12_re   C5.x

Definition at line 144 of file llfat_core.h.

#define c20_im   C6.y

Definition at line 147 of file llfat_core.h.

#define c20_re   C6.x

Definition at line 146 of file llfat_core.h.

#define c21_im   C7.y

Definition at line 149 of file llfat_core.h.

#define c21_re   C7.x

Definition at line 148 of file llfat_core.h.

#define c22_im   C8.y

Definition at line 151 of file llfat_core.h.

#define c22_re   C8.x

Definition at line 150 of file llfat_core.h.

#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 && last_proc_in_tdim){                     \
        sign = -1;                                              \
      }else if(i4 == -1 && first_proc_in_tdim){                 \
        sign = -1;                                              \
      }                                                         \
      break;                                                    \
    }                                                           \
  }while (0)

Definition at line 442 of file llfat_core.h.

#define cT00_im   (-c00_im)

Definition at line 215 of file llfat_core.h.

#define cT00_re   (+c00_re)

Definition at line 214 of file llfat_core.h.

#define cT01_im   (-c10_im)

Definition at line 217 of file llfat_core.h.

#define cT01_re   (+c10_re)

Definition at line 216 of file llfat_core.h.

#define cT02_im   (-c20_im)

Definition at line 219 of file llfat_core.h.

#define cT02_re   (+c20_re)

Definition at line 218 of file llfat_core.h.

#define cT10_im   (-c01_im)

Definition at line 221 of file llfat_core.h.

#define cT10_re   (+c01_re)

Definition at line 220 of file llfat_core.h.

#define cT11_im   (-c11_im)

Definition at line 223 of file llfat_core.h.

#define cT11_re   (+c11_re)

Definition at line 222 of file llfat_core.h.

#define cT12_im   (-c21_im)

Definition at line 225 of file llfat_core.h.

#define cT12_re   (+c21_re)

Definition at line 224 of file llfat_core.h.

#define cT20_im   (-c02_im)

Definition at line 227 of file llfat_core.h.

#define cT20_re   (+c02_re)

Definition at line 226 of file llfat_core.h.

#define cT21_im   (-c12_im)

Definition at line 229 of file llfat_core.h.

#define cT21_re   (+c12_re)

Definition at line 228 of file llfat_core.h.

#define cT22_im   (-c22_im)

Definition at line 231 of file llfat_core.h.

#define cT22_re   (+c22_re)

Definition at line 230 of file llfat_core.h.

#define D1   kparam.D1

Definition at line 13 of file llfat_core.h.

#define D1h   kparam.D1h

Definition at line 17 of file llfat_core.h.

#define D2   kparam.D2

Definition at line 14 of file llfat_core.h.

#define D3   kparam.D3

Definition at line 15 of file llfat_core.h.

#define D4   kparam.D4

Definition at line 16 of file llfat_core.h.

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

Definition at line 29 of file llfat_core.h.

#define DECLARE_VAR_SIGN   short sign=1

Definition at line 28 of file llfat_core.h.

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

Definition at line 31 of file llfat_core.h.

#define dimcomm   kparam.ghostDim

Definition at line 10 of file llfat_core.h.

#define fat00_im   FAT0.y

Definition at line 273 of file llfat_core.h.

#define fat00_re   FAT0.x

Definition at line 272 of file llfat_core.h.

#define fat01_im   FAT1.y

Definition at line 275 of file llfat_core.h.

#define fat01_re   FAT1.x

Definition at line 274 of file llfat_core.h.

#define fat02_im   FAT2.y

Definition at line 277 of file llfat_core.h.

#define fat02_re   FAT2.x

Definition at line 276 of file llfat_core.h.

#define fat10_im   FAT3.y

Definition at line 279 of file llfat_core.h.

#define fat10_re   FAT3.x

Definition at line 278 of file llfat_core.h.

#define fat11_im   FAT4.y

Definition at line 281 of file llfat_core.h.

#define fat11_re   FAT4.x

Definition at line 280 of file llfat_core.h.

#define fat12_im   FAT5.y

Definition at line 283 of file llfat_core.h.

#define fat12_re   FAT5.x

Definition at line 282 of file llfat_core.h.

#define fat20_im   FAT6.y

Definition at line 285 of file llfat_core.h.

#define fat20_re   FAT6.x

Definition at line 284 of file llfat_core.h.

#define fat21_im   FAT7.y

Definition at line 287 of file llfat_core.h.

#define fat21_re   FAT7.x

Definition at line 286 of file llfat_core.h.

#define fat22_im   FAT8.y

Definition at line 289 of file llfat_core.h.

#define fat22_re   FAT8.x

Definition at line 288 of file llfat_core.h.

#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE (   mydir1,
  mydir2 
)

Definition at line 649 of file llfat_core.h.

#define LLFAT_COMPUTE_NEW_IDX_LOWER_STAPLE_EX (   mydir1,
  mydir2 
)

Definition at line 721 of file llfat_core.h.

#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 630 of file llfat_core.h.

#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 702 of file llfat_core.h.

#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 611 of file llfat_core.h.

#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 684 of file llfat_core.h.

#define NUM_FLOATS   5

Definition at line 291 of file llfat_core.h.

#define tcomm   kparam.ghostDim[3]

Definition at line 9 of file llfat_core.h.

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

Definition at line 292 of file llfat_core.h.

#define tempa00_im   TEMPA0.y

Definition at line 235 of file llfat_core.h.

#define tempa00_re   TEMPA0.x

Definition at line 234 of file llfat_core.h.

#define tempa01_im   TEMPA1.y

Definition at line 237 of file llfat_core.h.

#define tempa01_re   TEMPA1.x

Definition at line 236 of file llfat_core.h.

#define tempa02_im   TEMPA2.y

Definition at line 239 of file llfat_core.h.

#define tempa02_re   TEMPA2.x

Definition at line 238 of file llfat_core.h.

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

Definition at line 293 of file llfat_core.h.

#define tempa10_im   TEMPA3.y

Definition at line 241 of file llfat_core.h.

#define tempa10_re   TEMPA3.x

Definition at line 240 of file llfat_core.h.

#define tempa11_im   TEMPA4.y

Definition at line 243 of file llfat_core.h.

#define tempa11_re   TEMPA4.x

Definition at line 242 of file llfat_core.h.

#define tempa12_im   TEMPA5.y

Definition at line 245 of file llfat_core.h.

#define tempa12_re   TEMPA5.x

Definition at line 244 of file llfat_core.h.

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

Definition at line 294 of file llfat_core.h.

#define tempa20_im   TEMPA6.y

Definition at line 247 of file llfat_core.h.

#define tempa20_re   TEMPA6.x

Definition at line 246 of file llfat_core.h.

#define tempa21_im   TEMPA7.y

Definition at line 249 of file llfat_core.h.

#define tempa21_re   TEMPA7.x

Definition at line 248 of file llfat_core.h.

#define tempa22_im   TEMPA8.y

Definition at line 251 of file llfat_core.h.

#define tempa22_re   TEMPA8.x

Definition at line 250 of file llfat_core.h.

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

Definition at line 295 of file llfat_core.h.

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

Definition at line 296 of file llfat_core.h.

#define tempb00_im   TEMPB0.y

Definition at line 254 of file llfat_core.h.

#define tempb00_re   TEMPB0.x

Definition at line 253 of file llfat_core.h.

#define tempb01_im   TEMPB1.y

Definition at line 256 of file llfat_core.h.

#define tempb01_re   TEMPB1.x

Definition at line 255 of file llfat_core.h.

#define tempb02_im   TEMPB2.y

Definition at line 258 of file llfat_core.h.

#define tempb02_re   TEMPB2.x

Definition at line 257 of file llfat_core.h.

#define tempb10_im   TEMPB3.y

Definition at line 260 of file llfat_core.h.

#define tempb10_re   TEMPB3.x

Definition at line 259 of file llfat_core.h.

#define tempb11_im   TEMPB4.y

Definition at line 262 of file llfat_core.h.

#define tempb11_re   TEMPB4.x

Definition at line 261 of file llfat_core.h.

#define tempb12_im   TEMPB5.y

Definition at line 264 of file llfat_core.h.

#define tempb12_re   TEMPB5.x

Definition at line 263 of file llfat_core.h.

#define tempb20_im   TEMPB6.y

Definition at line 266 of file llfat_core.h.

#define tempb20_re   TEMPB6.x

Definition at line 265 of file llfat_core.h.

#define tempb21_im   TEMPB7.y

Definition at line 268 of file llfat_core.h.

#define tempb21_re   TEMPB7.x

Definition at line 267 of file llfat_core.h.

#define tempb22_im   TEMPB8.y

Definition at line 270 of file llfat_core.h.

#define tempb22_re   TEMPB8.x

Definition at line 269 of file llfat_core.h.

#define UPDATE_COOR_LOWER_STAPLE (   mydir1,
  mydir2 
)

Definition at line 340 of file llfat_core.h.

#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 402 of file llfat_core.h.

#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 412 of file llfat_core.h.

#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 323 of file llfat_core.h.

#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 306 of file llfat_core.h.

#define Vsh_t   ghostFace[3]

Definition at line 4 of file llfat_core.h.

#define Vsh_x   ghostFace[0]

Definition at line 1 of file llfat_core.h.

#define Vsh_y   ghostFace[1]

Definition at line 2 of file llfat_core.h.

#define Vsh_z   ghostFace[2]

Definition at line 3 of file llfat_core.h.

#define xcomm   kparam.ghostDim[0]

Definition at line 6 of file llfat_core.h.

#define ycomm   kparam.ghostDim[1]

Definition at line 7 of file llfat_core.h.

#define zcomm   kparam.ghostDim[2]

Definition at line 8 of file llfat_core.h.


Function Documentation

template<int mu, int nu, int odd_bit>
__global__ void LLFAT_KERNEL ( do_siteComputeGenStapleParity  ,
RECONSTRUCT   
)
int int int save_staple __global__ void LLFAT_KERNEL ( do_computeGenStapleFieldParity  ,
RECONSTRUCT   
)
int int odd_bit __global__ void LLFAT_KERNEL_EX ( do_siteComputeGenStapleParity  ,
RECONSTRUCT   
)
int int int save_staple __global__ void LLFAT_KERNEL_EX ( do_computeGenStapleFieldParity  ,
RECONSTRUCT   
)

Variable Documentation

int int int save_staple __global__ void FloatM FloatN FloatN FloatM * fatlink_even

Definition at line 758 of file llfat_core.h.

int int int save_staple __global__ void FloatM FloatN FloatN FloatM FloatM * fatlink_odd

Definition at line 758 of file llfat_core.h.

int int int save_staple __global__ void FloatM FloatN FloatN FloatM FloatM FloatM * mulink_even

Definition at line 901 of file llfat_core.h.

int int int save_staple __global__ void FloatM FloatN FloatN FloatM FloatM FloatM FloatM * mulink_odd

Definition at line 901 of file llfat_core.h.

int int int save_staple __global__ void FloatM FloatN FloatN FloatM FloatM FloatM FloatM Float mycoeff

Definition at line 758 of file llfat_core.h.

int nu

Definition at line 758 of file llfat_core.h.

int int odd_bit

Definition at line 758 of file llfat_core.h.

int int int save_staple __global__ void FloatM FloatN * sitelink_even

Definition at line 758 of file llfat_core.h.

int int int save_staple __global__ void FloatM FloatN FloatN * sitelink_odd

Definition at line 758 of file llfat_core.h.

int int int save_staple __global__ void FloatM * staple_odd

Definition at line 758 of file llfat_core.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines