6 #if ((CUDA_VERSION >= 4010) && (__COMPUTE_CAPABILITY__ >= 200)) // NVVM compiler
8 #else // Open64 compiler
9 #define VOLATILE volatile
13 #define spinorFloat double
39 #define spinorFloat float
64 #endif // SPINOR_DOUBLE
107 #endif // GAUGE_DOUBLE
110 #define gT00_re (+g00_re)
111 #define gT00_im (-g00_im)
112 #define gT01_re (+g10_re)
113 #define gT01_im (-g10_im)
114 #define gT02_re (+g20_re)
115 #define gT02_im (-g20_im)
116 #define gT10_re (+g01_re)
117 #define gT10_im (-g01_im)
118 #define gT11_re (+g11_re)
119 #define gT11_im (-g11_im)
120 #define gT12_re (+g21_re)
121 #define gT12_im (-g21_im)
122 #define gT20_re (+g02_re)
123 #define gT20_im (-g02_im)
124 #define gT21_re (+g12_re)
125 #define gT21_im (-g12_im)
126 #define gT22_re (+g22_re)
127 #define gT22_im (-g22_im)
161 #if (defined MULTI_GPU) && (DD_PREC==2) // half precision
163 #endif // MULTI_GPU half precision
167 sid = blockIdx.x*blockDim.x + threadIdx.x;
182 x2 = aux1 - aux2 *
X2;
206 const int face_volume =
param.threads;
207 const int face_num = 1;
215 #if (DD_PREC==2) // half precision
220 coordsFromFaceIndex<1>(
X,
sid,
x1,
x2,
x3,
x4,
face_idx, face_volume,
dim, face_num,
param.parity,
dims);
VOLATILE spinorFloat o21_re
VOLATILE spinorFloat o32_re
VOLATILE spinorFloat o10_im
VOLATILE spinorFloat o31_re
VOLATILE spinorFloat o21_im
VOLATILE spinorFloat o00_im
VOLATILE spinorFloat o11_re
RECONSTRUCT_GAUGE_MATRIX(2)
__constant__ int ghostFace[QUDA_MAX_DIM+1]
VOLATILE spinorFloat o22_im
VOLATILE spinorFloat o01_im
VOLATILE spinorFloat o01_re
VOLATILE spinorFloat o30_re
VOLATILE spinorFloat o02_re
READ_SPINOR(SPINORTEX, param.sp_stride, sp_idx, sp_idx)
WRITE_SPINOR(param.sp_stride)
VOLATILE spinorFloat o12_im
VOLATILE spinorFloat o31_im
__constant__ int ga_stride
VOLATILE spinorFloat o22_re
VOLATILE spinorFloat o20_re
VOLATILE spinorFloat o12_re
VOLATILE spinorFloat o20_im
VOLATILE spinorFloat o10_re
VOLATILE spinorFloat o30_im
VOLATILE spinorFloat o11_im
READ_GAUGE_MATRIX(G, GAUGE0TEX, 2, ga_idx, ga_stride)
VOLATILE spinorFloat o02_im
VOLATILE spinorFloat o00_re
VOLATILE spinorFloat o32_im