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

Go to the source code of this file.

Macros

#define tmp_re   tmp.x
 
#define tmp_im   tmp.y
 
#define TOTAL_COMPONENTS   16
 
#define READ_SPINOR_SINGLE(spinor, stride, sp_idx, norm_idx)
 
#define READ_SPINOR_SINGLE_TEX(spinor, stride, sp_idx, norm_idx)
 
#define READ_INTERMEDIATE_SPINOR_SINGLE(spinor, stride, sp_idx, norm_idx)
 
#define READ_INTERMEDIATE_SPINOR_SINGLE_TEX(spinor, stride, sp_idx, norm_idx)
 
#define READ_SPINOR   READ_SPINOR_SINGLE_TEX
 
#define SPINORTEX   spinorTexSingle
 
#define READ_INTERMEDIATE_SPINOR   READ_INTERMEDIATE_SPINOR_SINGLE_TEX
 
#define INTERTEX   interTexSingle
 
#define SPINOR_HOP   6
 

Functions

__global__ void contractGamma5PlusKernel (float2 *out, float4 *in1, float4 *in2, int myStride, const int Parity, const DslashParam param)
 
__global__ void contractTslicePlusKernel (float2 *out, float4 *in1, float4 *in2, int myStride, const int Tslice, const int Parity, const DslashParam param)
 
__global__ void contractPlusKernel (float2 *out, float4 *in1, float4 *in2, int myStride, const int Parity, const DslashParam param)
 

Macro Definition Documentation

#define INTERTEX   interTexSingle

Definition at line 951 of file contract_core_plus.h.

#define READ_INTERMEDIATE_SPINOR   READ_INTERMEDIATE_SPINOR_SINGLE_TEX

Definition at line 946 of file contract_core_plus.h.

#define READ_INTERMEDIATE_SPINOR_SINGLE (   spinor,
  stride,
  sp_idx,
  norm_idx 
)
Value:
float4 J0 = spinor[sp_idx + 0*(stride)]; \
float4 J1 = spinor[sp_idx + 1*(stride)]; \
float4 J2 = spinor[sp_idx + 2*(stride)]; \
float4 J3 = spinor[sp_idx + 3*(stride)]; \
float4 J4 = spinor[sp_idx + 4*(stride)]; \
float4 J5 = spinor[sp_idx + 5*(stride)];
int sp_idx
cpuColorSpinorField * spinor
Definition: dslash_test.cpp:40

Definition at line 912 of file contract_core_plus.h.

#define READ_INTERMEDIATE_SPINOR_SINGLE_TEX (   spinor,
  stride,
  sp_idx,
  norm_idx 
)
Value:
float4 J0 = TEX1DFETCH(float4, (spinor), sp_idx + 0*(stride)); \
float4 J1 = TEX1DFETCH(float4, (spinor), sp_idx + 1*(stride)); \
float4 J2 = TEX1DFETCH(float4, (spinor), sp_idx + 2*(stride)); \
float4 J3 = TEX1DFETCH(float4, (spinor), sp_idx + 3*(stride)); \
float4 J4 = TEX1DFETCH(float4, (spinor), sp_idx + 4*(stride)); \
float4 J5 = TEX1DFETCH(float4, (spinor), sp_idx + 5*(stride));
int sp_idx
cpuColorSpinorField * spinor
Definition: dslash_test.cpp:40
#define TEX1DFETCH(type, tex, idx)

Definition at line 920 of file contract_core_plus.h.

#define READ_SPINOR   READ_SPINOR_SINGLE_TEX

Definition at line 933 of file contract_core_plus.h.

#define READ_SPINOR_SINGLE (   spinor,
  stride,
  sp_idx,
  norm_idx 
)
Value:
float4 I0 = spinor[sp_idx + 0*(stride)]; \
float4 I1 = spinor[sp_idx + 1*(stride)]; \
float4 I2 = spinor[sp_idx + 2*(stride)]; \
float4 I3 = spinor[sp_idx + 3*(stride)]; \
float4 I4 = spinor[sp_idx + 4*(stride)]; \
float4 I5 = spinor[sp_idx + 5*(stride)];
int sp_idx
cpuColorSpinorField * spinor
Definition: dslash_test.cpp:40

Definition at line 895 of file contract_core_plus.h.

#define READ_SPINOR_SINGLE_TEX (   spinor,
  stride,
  sp_idx,
  norm_idx 
)
Value:
float4 I0 = TEX1DFETCH(float4, (spinor), sp_idx + 0*(stride)); \
float4 I1 = TEX1DFETCH(float4, (spinor), sp_idx + 1*(stride)); \
float4 I2 = TEX1DFETCH(float4, (spinor), sp_idx + 2*(stride)); \
float4 I3 = TEX1DFETCH(float4, (spinor), sp_idx + 3*(stride)); \
float4 I4 = TEX1DFETCH(float4, (spinor), sp_idx + 4*(stride)); \
float4 I5 = TEX1DFETCH(float4, (spinor), sp_idx + 5*(stride));
int sp_idx
cpuColorSpinorField * spinor
Definition: dslash_test.cpp:40
#define TEX1DFETCH(type, tex, idx)

Definition at line 904 of file contract_core_plus.h.

#define SPINOR_HOP   6

Definition at line 955 of file contract_core_plus.h.

#define SPINORTEX   spinorTexSingle

Definition at line 938 of file contract_core_plus.h.

#define tmp_im   tmp.y

Definition at line 5 of file contract_core_plus.h.

#define tmp_re   tmp.x

Definition at line 4 of file contract_core_plus.h.

#define TOTAL_COMPONENTS   16

Definition at line 7 of file contract_core_plus.h.

Function Documentation

__global__ void contractGamma5PlusKernel ( float2 *  out,
float4 *  in1,
float4 *  in2,
int  myStride,
const int  Parity,
const DslashParam  param 
)

Definition at line 957 of file contract_core_plus.h.

__global__ void contractPlusKernel ( float2 *  out,
float4 *  in1,
float4 *  in2,
int  myStride,
const int  Parity,
const DslashParam  param 
)

Definition at line 1535 of file contract_core_plus.h.

__global__ void contractTslicePlusKernel ( float2 *  out,
float4 *  in1,
float4 *  in2,
int  myStride,
const int  Tslice,
const int  Parity,
const DslashParam  param 
)

Definition at line 1264 of file contract_core_plus.h.