QUDA v0.4.0
A library for QCD on GPUs
Defines | Functions | Variables
quda/lib/dslash_core/tm_dslash_fermi_core.h File Reference
#include "read_gauge.h"
#include "read_clover.h"
#include "io_spinor.h"

Go to the source code of this file.

Defines

#define DSLASH_SHARED_FLOATS_PER_THREAD   24
#define VOLATILE   volatile
#define spinorFloat   float
#define WRITE_SPINOR_SHARED   WRITE_SPINOR_SHARED_FLOAT4
#define READ_SPINOR_SHARED   READ_SPINOR_SHARED_FLOAT4
#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 A_re   G4.z
#define A_im   G4.w
#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)
#define SHARED_STRIDE   32

Functions

 if (aux >=X1 *X4) return
 if (x2 >=X2) return
 if (x3 >=X3) return

Variables

VOLATILE spinorFloat o00_re = 0
VOLATILE spinorFloat o00_im = 0
VOLATILE spinorFloat o01_re = 0
VOLATILE spinorFloat o01_im = 0
VOLATILE spinorFloat o02_re = 0
VOLATILE spinorFloat o02_im = 0
VOLATILE spinorFloat o10_re = 0
VOLATILE spinorFloat o10_im = 0
VOLATILE spinorFloat o11_re = 0
VOLATILE spinorFloat o11_im = 0
VOLATILE spinorFloat o12_re = 0
VOLATILE spinorFloat o12_im = 0
VOLATILE spinorFloat o20_re = 0
VOLATILE spinorFloat o20_im = 0
VOLATILE spinorFloat o21_re = 0
VOLATILE spinorFloat o21_im = 0
VOLATILE spinorFloat o22_re = 0
VOLATILE spinorFloat o22_im = 0
VOLATILE spinorFloat o30_re = 0
VOLATILE spinorFloat o30_im = 0
VOLATILE spinorFloat o31_re = 0
VOLATILE spinorFloat o31_im = 0
VOLATILE spinorFloat o32_re = 0
VOLATILE spinorFloat o32_im = 0
int x1 = aux - x4*X1
int x2 = blockIdx.y*blockDim.y + threadIdx.y
int x3 = blockIdx.z*blockDim.z + threadIdx.z
int x4 = aux / X1
int X = ((x4*X3 + x3)*X2 + x2)*X1 + x1
int sid = X >> 1
int xt = blockIdx.x*blockDim.x + threadIdx.x
int aux = xt+xt

Define Documentation

#define A_im   G4.w

Definition at line 115 of file tm_dslash_fermi_core.h.

#define A_re   G4.z

Definition at line 114 of file tm_dslash_fermi_core.h.

#define DSLASH_SHARED_FLOATS_PER_THREAD   24

Definition at line 3 of file tm_dslash_fermi_core.h.

#define g00_im   G0.y

Definition at line 96 of file tm_dslash_fermi_core.h.

#define g00_re   G0.x

Definition at line 95 of file tm_dslash_fermi_core.h.

#define g01_im   G0.w

Definition at line 98 of file tm_dslash_fermi_core.h.

#define g01_re   G0.z

Definition at line 97 of file tm_dslash_fermi_core.h.

#define g02_im   G1.y

Definition at line 100 of file tm_dslash_fermi_core.h.

#define g02_re   G1.x

Definition at line 99 of file tm_dslash_fermi_core.h.

#define g10_im   G1.w

Definition at line 102 of file tm_dslash_fermi_core.h.

#define g10_re   G1.z

Definition at line 101 of file tm_dslash_fermi_core.h.

#define g11_im   G2.y

Definition at line 104 of file tm_dslash_fermi_core.h.

#define g11_re   G2.x

Definition at line 103 of file tm_dslash_fermi_core.h.

#define g12_im   G2.w

Definition at line 106 of file tm_dslash_fermi_core.h.

#define g12_re   G2.z

Definition at line 105 of file tm_dslash_fermi_core.h.

#define g20_im   G3.y

Definition at line 108 of file tm_dslash_fermi_core.h.

#define g20_re   G3.x

Definition at line 107 of file tm_dslash_fermi_core.h.

#define g21_im   G3.w

Definition at line 110 of file tm_dslash_fermi_core.h.

#define g21_re   G3.z

Definition at line 109 of file tm_dslash_fermi_core.h.

#define g22_im   G4.y

Definition at line 112 of file tm_dslash_fermi_core.h.

#define g22_re   G4.x

Definition at line 111 of file tm_dslash_fermi_core.h.

#define gT00_im   (-g00_im)

Definition at line 121 of file tm_dslash_fermi_core.h.

#define gT00_re   (+g00_re)

Definition at line 120 of file tm_dslash_fermi_core.h.

#define gT01_im   (-g10_im)

Definition at line 123 of file tm_dslash_fermi_core.h.

#define gT01_re   (+g10_re)

Definition at line 122 of file tm_dslash_fermi_core.h.

#define gT02_im   (-g20_im)

Definition at line 125 of file tm_dslash_fermi_core.h.

#define gT02_re   (+g20_re)

Definition at line 124 of file tm_dslash_fermi_core.h.

#define gT10_im   (-g01_im)

Definition at line 127 of file tm_dslash_fermi_core.h.

#define gT10_re   (+g01_re)

Definition at line 126 of file tm_dslash_fermi_core.h.

#define gT11_im   (-g11_im)

Definition at line 129 of file tm_dslash_fermi_core.h.

#define gT11_re   (+g11_re)

Definition at line 128 of file tm_dslash_fermi_core.h.

#define gT12_im   (-g21_im)

Definition at line 131 of file tm_dslash_fermi_core.h.

#define gT12_re   (+g21_re)

Definition at line 130 of file tm_dslash_fermi_core.h.

#define gT20_im   (-g02_im)

Definition at line 133 of file tm_dslash_fermi_core.h.

#define gT20_re   (+g02_re)

Definition at line 132 of file tm_dslash_fermi_core.h.

#define gT21_im   (-g12_im)

Definition at line 135 of file tm_dslash_fermi_core.h.

#define gT21_re   (+g12_re)

Definition at line 134 of file tm_dslash_fermi_core.h.

#define gT22_im   (-g22_im)

Definition at line 137 of file tm_dslash_fermi_core.h.

#define gT22_re   (+g22_re)

Definition at line 136 of file tm_dslash_fermi_core.h.

#define i00_im   I0.y

Definition at line 45 of file tm_dslash_fermi_core.h.

#define i00_re   I0.x

Definition at line 44 of file tm_dslash_fermi_core.h.

#define i01_im   I0.w

Definition at line 47 of file tm_dslash_fermi_core.h.

#define i01_re   I0.z

Definition at line 46 of file tm_dslash_fermi_core.h.

#define i02_im   I1.y

Definition at line 49 of file tm_dslash_fermi_core.h.

#define i02_re   I1.x

Definition at line 48 of file tm_dslash_fermi_core.h.

#define i10_im   I1.w

Definition at line 51 of file tm_dslash_fermi_core.h.

#define i10_re   I1.z

Definition at line 50 of file tm_dslash_fermi_core.h.

#define i11_im   I2.y

Definition at line 53 of file tm_dslash_fermi_core.h.

#define i11_re   I2.x

Definition at line 52 of file tm_dslash_fermi_core.h.

#define i12_im   I2.w

Definition at line 55 of file tm_dslash_fermi_core.h.

#define i12_re   I2.z

Definition at line 54 of file tm_dslash_fermi_core.h.

#define i20_im   I3.y

Definition at line 57 of file tm_dslash_fermi_core.h.

#define i20_re   I3.x

Definition at line 56 of file tm_dslash_fermi_core.h.

#define i21_im   I3.w

Definition at line 59 of file tm_dslash_fermi_core.h.

#define i21_re   I3.z

Definition at line 58 of file tm_dslash_fermi_core.h.

#define i22_im   I4.y

Definition at line 61 of file tm_dslash_fermi_core.h.

#define i22_re   I4.x

Definition at line 60 of file tm_dslash_fermi_core.h.

#define i30_im   I4.w

Definition at line 63 of file tm_dslash_fermi_core.h.

#define i30_re   I4.z

Definition at line 62 of file tm_dslash_fermi_core.h.

#define i31_im   I5.y

Definition at line 65 of file tm_dslash_fermi_core.h.

#define i31_re   I5.x

Definition at line 64 of file tm_dslash_fermi_core.h.

#define i32_im   I5.w

Definition at line 67 of file tm_dslash_fermi_core.h.

#define i32_re   I5.z

Definition at line 66 of file tm_dslash_fermi_core.h.

#define READ_SPINOR_SHARED   READ_SPINOR_SHARED_FLOAT4

Definition at line 43 of file tm_dslash_fermi_core.h.

#define SHARED_STRIDE   32

Definition at line 168 of file tm_dslash_fermi_core.h.

#define spinorFloat   float

Definition at line 41 of file tm_dslash_fermi_core.h.

#define VOLATILE   volatile

Definition at line 9 of file tm_dslash_fermi_core.h.

#define WRITE_SPINOR_SHARED   WRITE_SPINOR_SHARED_FLOAT4

Definition at line 42 of file tm_dslash_fermi_core.h.


Function Documentation

if ( aux >=X1 X4)
if ( x3 >=  X3)
if ( x2 >=  X2)

Variable Documentation

int aux = xt+xt

Definition at line 193 of file tm_dslash_fermi_core.h.

o00_im = 0

Definition at line 141 of file tm_dslash_fermi_core.h.

o00_re = 0

Definition at line 140 of file tm_dslash_fermi_core.h.

o01_im = 0

Definition at line 143 of file tm_dslash_fermi_core.h.

o01_re = 0

Definition at line 142 of file tm_dslash_fermi_core.h.

o02_im = 0

Definition at line 145 of file tm_dslash_fermi_core.h.

o02_re = 0

Definition at line 144 of file tm_dslash_fermi_core.h.

o10_im = 0

Definition at line 147 of file tm_dslash_fermi_core.h.

o10_re = 0

Definition at line 146 of file tm_dslash_fermi_core.h.

o11_im = 0

Definition at line 149 of file tm_dslash_fermi_core.h.

o11_re = 0

Definition at line 148 of file tm_dslash_fermi_core.h.

o12_im = 0

Definition at line 151 of file tm_dslash_fermi_core.h.

o12_re = 0

Definition at line 150 of file tm_dslash_fermi_core.h.

o20_im = 0

Definition at line 153 of file tm_dslash_fermi_core.h.

o20_re = 0

Definition at line 152 of file tm_dslash_fermi_core.h.

o21_im = 0

Definition at line 155 of file tm_dslash_fermi_core.h.

o21_re = 0

Definition at line 154 of file tm_dslash_fermi_core.h.

o22_im = 0

Definition at line 157 of file tm_dslash_fermi_core.h.

o22_re = 0

Definition at line 156 of file tm_dslash_fermi_core.h.

o30_im = 0

Definition at line 159 of file tm_dslash_fermi_core.h.

o30_re = 0

Definition at line 158 of file tm_dslash_fermi_core.h.

o31_im = 0

Definition at line 161 of file tm_dslash_fermi_core.h.

o31_re = 0

Definition at line 160 of file tm_dslash_fermi_core.h.

o32_im = 0

Definition at line 163 of file tm_dslash_fermi_core.h.

o32_re = 0

Definition at line 162 of file tm_dslash_fermi_core.h.

sid = X >> 1

Definition at line 182 of file tm_dslash_fermi_core.h.

X = ((x4*X3 + x3)*X2 + x2)*X1 + x1

Definition at line 176 of file tm_dslash_fermi_core.h.

x1 = aux - x4*X1

Definition at line 175 of file tm_dslash_fermi_core.h.

x2 = blockIdx.y*blockDim.y + threadIdx.y

Definition at line 175 of file tm_dslash_fermi_core.h.

x3 = blockIdx.z*blockDim.z + threadIdx.z

Definition at line 175 of file tm_dslash_fermi_core.h.

x4 = aux / X1

Definition at line 175 of file tm_dslash_fermi_core.h.

Definition at line 192 of file tm_dslash_fermi_core.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines