QUDA  v0.7.0
A library for QCD on GPUs
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Macros | Functions | Variables
tm_ndeg_fused_exterior_dslash_core.h File Reference
#include "read_gauge.h"
#include "io_spinor.h"

Go to the source code of this file.

Macros

#define SHARED_TMNDEG_FLOATS_PER_THREAD   0
 
#define FLAVORS   2
 
#define VOLATILE   volatile
 
#define spinorFloat   float
 
#define i00_re   I0.x
 
#define i00_im   I0.y
 
#define i01_re   I0.z
 
#define i01_im   I0.w
 
#define i02_re   I1.x
 
#define i02_im   I1.y
 
#define i10_re   I1.z
 
#define i10_im   I1.w
 
#define i11_re   I2.x
 
#define i11_im   I2.y
 
#define i12_re   I2.z
 
#define i12_im   I2.w
 
#define i20_re   I3.x
 
#define i20_im   I3.y
 
#define i21_re   I3.z
 
#define i21_im   I3.w
 
#define i22_re   I4.x
 
#define i22_im   I4.y
 
#define i30_re   I4.z
 
#define i30_im   I4.w
 
#define i31_re   I5.x
 
#define i31_im   I5.y
 
#define i32_re   I5.z
 
#define i32_im   I5.w
 
#define g00_re   G0.x
 
#define g00_im   G0.y
 
#define g01_re   G0.z
 
#define g01_im   G0.w
 
#define g02_re   G1.x
 
#define g02_im   G1.y
 
#define g10_re   G1.z
 
#define g10_im   G1.w
 
#define g11_re   G2.x
 
#define g11_im   G2.y
 
#define g12_re   G2.z
 
#define g12_im   G2.w
 
#define g20_re   G3.x
 
#define g20_im   G3.y
 
#define g21_re   G3.z
 
#define g21_im   G3.w
 
#define g22_re   G4.x
 
#define g22_im   G4.y
 
#define gT00_re   (+g00_re)
 
#define gT00_im   (-g00_im)
 
#define gT01_re   (+g10_re)
 
#define gT01_im   (-g10_im)
 
#define gT02_re   (+g20_re)
 
#define gT02_im   (-g20_im)
 
#define gT10_re   (+g01_re)
 
#define gT10_im   (-g01_im)
 
#define gT11_re   (+g11_re)
 
#define gT11_im   (-g11_im)
 
#define gT12_re   (+g21_re)
 
#define gT12_im   (-g21_im)
 
#define gT20_re   (+g02_re)
 
#define gT20_im   (-g02_im)
 
#define gT21_re   (+g12_re)
 
#define gT21_im   (-g12_im)
 
#define gT22_re   (+g22_re)
 
#define gT22_im   (-g22_im)
 

Functions

 if (sid >=param.threads) return
 
 coordsFromIndex< EVEN_X > (X, x1, x2, x3, x4, sid, param.parity, dims)
 
 if (isActive(dim, 0,+1, x1, x2, x3, x4, param.commDim, param.X)&&x1==X1m1)
 
 if (isActive(dim, 0,-1, x1, x2, x3, x4, param.commDim, param.X)&&x1==0)
 
 if (isActive(dim, 1,+1, x1, x2, x3, x4, param.commDim, param.X)&&x2==X2m1)
 
 if (isActive(dim, 1,-1, x1, x2, x3, x4, param.commDim, param.X)&&x2==0)
 
 if (isActive(dim, 2,+1, x1, x2, x3, x4, param.commDim, param.X)&&x3==X3m1)
 
 if (isActive(dim, 2,-1, x1, x2, x3, x4, param.commDim, param.X)&&x3==0)
 
 if (isActive(dim, 3,+1, x1, x2, x3, x4, param.commDim, param.X)&&x4==X4m1)
 
 if (isActive(dim, 3,-1, x1, x2, x3, x4, param.commDim, param.X)&&x4==0)
 
o1_00_im *o1_01_re *o1_01_im
*o1_02_re *o1_02_im *o1_10_re
*o1_10_im *o1_11_re *o1_11_im
*o1_12_re *o1_12_im *o1_20_re
*o1_20_im *o1_21_re *o1_21_im
*o1_22_re *o1_22_im *o1_30_re
*o1_30_im *o1_31_re *o1_31_im
*o1_32_re *o1_32_im *o2_00_re
*o2_00_im *o2_01_re *o2_01_im
*o2_02_re *o2_02_im *o2_10_re
*o2_10_im *o2_11_re *o2_11_im
*o2_12_re *o2_12_im *o2_20_re
*o2_20_im *o2_21_re *o2_21_im
*o2_22_re *o2_22_im *o2_30_re
*o2_30_im *o2_31_re *o2_31_im
*o2_32_re *o2_32_im
WRITE_FLAVOR_SPINOR ()
 

Variables

KernelType kernel_type = EXTERIOR_KERNEL_ALL
 
VOLATILE spinorFloat o1_00_re = 0
 
VOLATILE spinorFloat o1_00_im = 0
 
VOLATILE spinorFloat o1_01_re = 0
 
VOLATILE spinorFloat o1_01_im = 0
 
VOLATILE spinorFloat o1_02_re = 0
 
VOLATILE spinorFloat o1_02_im = 0
 
VOLATILE spinorFloat o1_10_re = 0
 
VOLATILE spinorFloat o1_10_im = 0
 
VOLATILE spinorFloat o1_11_re = 0
 
VOLATILE spinorFloat o1_11_im = 0
 
VOLATILE spinorFloat o1_12_re = 0
 
VOLATILE spinorFloat o1_12_im = 0
 
VOLATILE spinorFloat o1_20_re = 0
 
VOLATILE spinorFloat o1_20_im = 0
 
VOLATILE spinorFloat o1_21_re = 0
 
VOLATILE spinorFloat o1_21_im = 0
 
VOLATILE spinorFloat o1_22_re = 0
 
VOLATILE spinorFloat o1_22_im = 0
 
VOLATILE spinorFloat o1_30_re = 0
 
VOLATILE spinorFloat o1_30_im = 0
 
VOLATILE spinorFloat o1_31_re = 0
 
VOLATILE spinorFloat o1_31_im = 0
 
VOLATILE spinorFloat o1_32_re = 0
 
VOLATILE spinorFloat o1_32_im = 0
 
VOLATILE spinorFloat o2_00_re = 0
 
VOLATILE spinorFloat o2_00_im = 0
 
VOLATILE spinorFloat o2_01_re = 0
 
VOLATILE spinorFloat o2_01_im = 0
 
VOLATILE spinorFloat o2_02_re = 0
 
VOLATILE spinorFloat o2_02_im = 0
 
VOLATILE spinorFloat o2_10_re = 0
 
VOLATILE spinorFloat o2_10_im = 0
 
VOLATILE spinorFloat o2_11_re = 0
 
VOLATILE spinorFloat o2_11_im = 0
 
VOLATILE spinorFloat o2_12_re = 0
 
VOLATILE spinorFloat o2_12_im = 0
 
VOLATILE spinorFloat o2_20_re = 0
 
VOLATILE spinorFloat o2_20_im = 0
 
VOLATILE spinorFloat o2_21_re = 0
 
VOLATILE spinorFloat o2_21_im = 0
 
VOLATILE spinorFloat o2_22_re = 0
 
VOLATILE spinorFloat o2_22_im = 0
 
VOLATILE spinorFloat o2_30_re = 0
 
VOLATILE spinorFloat o2_30_im = 0
 
VOLATILE spinorFloat o2_31_re = 0
 
VOLATILE spinorFloat o2_31_im = 0
 
VOLATILE spinorFloat o2_32_re = 0
 
VOLATILE spinorFloat o2_32_im = 0
 
int x1
 
int x2
 
int x3
 
int x4
 
int X
 
int sid = blockIdx.x*blockDim.x + threadIdx.x
 
int dim
 
int face_idx
 
int Y [4] = {X1,X2,X3,X4}
 
int faceVolume [4] = (X2*X3*X4)>>1
 
const int dims [] = {X1, X2, X3, X4}
 

Macro Definition Documentation

#define FLAVORS   2

Definition at line 5 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g00_im   G0.y

Definition at line 92 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g00_re   G0.x

Definition at line 91 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g01_im   G0.w

Definition at line 94 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g01_re   G0.z

Definition at line 93 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g02_im   G1.y

Definition at line 96 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g02_re   G1.x

Definition at line 95 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g10_im   G1.w

Definition at line 98 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g10_re   G1.z

Definition at line 97 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g11_im   G2.y

Definition at line 100 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g11_re   G2.x

Definition at line 99 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g12_im   G2.w

Definition at line 102 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g12_re   G2.z

Definition at line 101 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g20_im   G3.y

Definition at line 104 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g20_re   G3.x

Definition at line 103 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g21_im   G3.w

Definition at line 106 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g21_re   G3.z

Definition at line 105 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g22_im   G4.y

Definition at line 108 of file tm_ndeg_fused_exterior_dslash_core.h.

#define g22_re   G4.x

Definition at line 107 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT00_im   (-g00_im)

Definition at line 114 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT00_re   (+g00_re)

Definition at line 113 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT01_im   (-g10_im)

Definition at line 116 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT01_re   (+g10_re)

Definition at line 115 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT02_im   (-g20_im)

Definition at line 118 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT02_re   (+g20_re)

Definition at line 117 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT10_im   (-g01_im)

Definition at line 120 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT10_re   (+g01_re)

Definition at line 119 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT11_im   (-g11_im)

Definition at line 122 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT11_re   (+g11_re)

Definition at line 121 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT12_im   (-g21_im)

Definition at line 124 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT12_re   (+g21_re)

Definition at line 123 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT20_im   (-g02_im)

Definition at line 126 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT20_re   (+g02_re)

Definition at line 125 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT21_im   (-g12_im)

Definition at line 128 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT21_re   (+g12_re)

Definition at line 127 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT22_im   (-g22_im)

Definition at line 130 of file tm_ndeg_fused_exterior_dslash_core.h.

#define gT22_re   (+g22_re)

Definition at line 129 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i00_im   I0.y

Definition at line 44 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i00_re   I0.x

Definition at line 43 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i01_im   I0.w

Definition at line 46 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i01_re   I0.z

Definition at line 45 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i02_im   I1.y

Definition at line 48 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i02_re   I1.x

Definition at line 47 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i10_im   I1.w

Definition at line 50 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i10_re   I1.z

Definition at line 49 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i11_im   I2.y

Definition at line 52 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i11_re   I2.x

Definition at line 51 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i12_im   I2.w

Definition at line 54 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i12_re   I2.z

Definition at line 53 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i20_im   I3.y

Definition at line 56 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i20_re   I3.x

Definition at line 55 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i21_im   I3.w

Definition at line 58 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i21_re   I3.z

Definition at line 57 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i22_im   I4.y

Definition at line 60 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i22_re   I4.x

Definition at line 59 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i30_im   I4.w

Definition at line 62 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i30_re   I4.z

Definition at line 61 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i31_im   I5.y

Definition at line 64 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i31_re   I5.x

Definition at line 63 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i32_im   I5.w

Definition at line 66 of file tm_ndeg_fused_exterior_dslash_core.h.

#define i32_re   I5.z

Definition at line 65 of file tm_ndeg_fused_exterior_dslash_core.h.

#define SHARED_TMNDEG_FLOATS_PER_THREAD   0

Definition at line 4 of file tm_ndeg_fused_exterior_dslash_core.h.

#define spinorFloat   float

Definition at line 42 of file tm_ndeg_fused_exterior_dslash_core.h.

#define VOLATILE   volatile

Definition at line 11 of file tm_ndeg_fused_exterior_dslash_core.h.

Function Documentation

coordsFromIndex< EVEN_X > ( X  ,
x1  ,
x2  ,
x3  ,
x4  ,
sid  ,
param.  parity,
dims   
)
if ( sid >=param.  threads)
if ( isActive(dim, 0,+1, x1, x2, x3, x4, param.commDim, param.X)&&  x1 = =X1m1)

Definition at line 308 of file tm_ndeg_fused_exterior_dslash_core.h.

if ( isActive(dim, 0,-1, x1, x2, x3, x4, param.commDim, param.X)&&  x1 = =0)

Definition at line 655 of file tm_ndeg_fused_exterior_dslash_core.h.

if ( isActive(dim, 1,+1, x1, x2, x3, x4, param.commDim, param.X)&&  x2 = =X2m1)

Definition at line 1002 of file tm_ndeg_fused_exterior_dslash_core.h.

if ( isActive(dim, 1,-1, x1, x2, x3, x4, param.commDim, param.X)&&  x2 = =0)

Definition at line 1349 of file tm_ndeg_fused_exterior_dslash_core.h.

if ( isActive(dim, 2,+1, x1, x2, x3, x4, param.commDim, param.X)&&  x3 = =X3m1)

Definition at line 1696 of file tm_ndeg_fused_exterior_dslash_core.h.

if ( isActive(dim, 2,-1, x1, x2, x3, x4, param.commDim, param.X)&&  x3 = =0)

Definition at line 2043 of file tm_ndeg_fused_exterior_dslash_core.h.

if ( isActive(dim, 3,+1, x1, x2, x3, x4, param.commDim, param.X)&&  x4 = =X4m1)

Definition at line 2390 of file tm_ndeg_fused_exterior_dslash_core.h.

if ( isActive(dim, 3,-1, x1, x2, x3, x4, param.commDim, param.X)&&  x4 = =0)

Definition at line 2846 of file tm_ndeg_fused_exterior_dslash_core.h.

Variable Documentation

int dim

Definition at line 195 of file tm_ndeg_fused_exterior_dslash_core.h.

const int dims[] = {X1, X2, X3, X4}

Definition at line 213 of file tm_ndeg_fused_exterior_dslash_core.h.

int face_idx

Definition at line 196 of file tm_ndeg_fused_exterior_dslash_core.h.

faceVolume[3] = (X2*X3*X4)>>1

Definition at line 198 of file tm_ndeg_fused_exterior_dslash_core.h.

Definition at line 13 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_00_im = 0

Definition at line 134 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_00_re = 0

Definition at line 133 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_01_im = 0

Definition at line 136 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_01_re = 0

Definition at line 135 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_02_im = 0

Definition at line 138 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_02_re = 0

Definition at line 137 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_10_im = 0

Definition at line 140 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_10_re = 0

Definition at line 139 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_11_im = 0

Definition at line 142 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_11_re = 0

Definition at line 141 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_12_im = 0

Definition at line 144 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_12_re = 0

Definition at line 143 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_20_im = 0

Definition at line 146 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_20_re = 0

Definition at line 145 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_21_im = 0

Definition at line 148 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_21_re = 0

Definition at line 147 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_22_im = 0

Definition at line 150 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_22_re = 0

Definition at line 149 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_30_im = 0

Definition at line 152 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_30_re = 0

Definition at line 151 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_31_im = 0

Definition at line 154 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_31_re = 0

Definition at line 153 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_32_im = 0

Definition at line 156 of file tm_ndeg_fused_exterior_dslash_core.h.

o1_32_re = 0

Definition at line 155 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_00_im = 0

Definition at line 159 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_00_re = 0

Definition at line 158 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_01_im = 0

Definition at line 161 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_01_re = 0

Definition at line 160 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_02_im = 0

Definition at line 163 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_02_re = 0

Definition at line 162 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_10_im = 0

Definition at line 165 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_10_re = 0

Definition at line 164 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_11_im = 0

Definition at line 167 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_11_re = 0

Definition at line 166 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_12_im = 0

Definition at line 169 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_12_re = 0

Definition at line 168 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_20_im = 0

Definition at line 171 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_20_re = 0

Definition at line 170 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_21_im = 0

Definition at line 173 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_21_re = 0

Definition at line 172 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_22_im = 0

Definition at line 175 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_22_re = 0

Definition at line 174 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_30_im = 0

Definition at line 177 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_30_re = 0

Definition at line 176 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_31_im = 0

Definition at line 179 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_31_re = 0

Definition at line 178 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_32_im = 0

Definition at line 181 of file tm_ndeg_fused_exterior_dslash_core.h.

o2_32_re = 0

Definition at line 180 of file tm_ndeg_fused_exterior_dslash_core.h.

Definition at line 193 of file tm_ndeg_fused_exterior_dslash_core.h.

int X

Definition at line 187 of file tm_ndeg_fused_exterior_dslash_core.h.

int x1

Definition at line 186 of file tm_ndeg_fused_exterior_dslash_core.h.

int x2

Definition at line 186 of file tm_ndeg_fused_exterior_dslash_core.h.

int x3

Definition at line 186 of file tm_ndeg_fused_exterior_dslash_core.h.

int x4

Definition at line 186 of file tm_ndeg_fused_exterior_dslash_core.h.

int Y[4] = {X1,X2,X3,X4}

Definition at line 197 of file tm_ndeg_fused_exterior_dslash_core.h.