|
template<typename Float , int nColor, bool dagger, bool xpay, Dslash5Type type, typename Arg > |
__device__ __host__ void | quda::dslash5 (Arg &arg, int parity, int x_cb, int s) |
| Apply the D5 operator at given site. More...
|
|
template<typename Float , int nColor, bool dagger, bool xpay, Dslash5Type type, typename Arg > |
void | quda::dslash5CPU (Arg &arg) |
| CPU kernel for applying the D5 operator. More...
|
|
template<typename Float , int nColor, bool dagger, bool xpay, Dslash5Type type, typename Arg > |
__global__ void | quda::dslash5GPU (Arg arg) |
| GPU kernel for applying the D5 operator. More...
|
|
template<typename real , int nColor, bool dagger, Dslash5Type type, bool shared, typename Vector , typename Arg > |
__device__ __host__ Vector | quda::constantInv (Arg &arg, int parity, int x_cb, int s_) |
| Apply the M5 inverse operator at a given site on the lattice. This is the original algorithm as described in Kim and Izubushi (LATTICE 2013_033), where the b and c coefficients are constant along the Ls dimension, so is suitable for Shamir and Mobius domain-wall fermions. More...
|
|
template<typename real , int nColor, bool dagger, Dslash5Type type, bool shared, typename Vector , typename Arg > |
__device__ __host__ Vector | quda::variableInv (Arg &arg, int parity, int x_cb, int s_) |
| Apply the M5 inverse operator at a given site on the lattice. This is an alternative algorithm that is applicable to variable b and c coefficients: here each thread in the s dimension starts computing at s = s_, and computes the left- and right-handed contributions in two separate passes. For the left-handed contribution we sweep through increasing s, e.g., s=s_, s_+1, s_+2, and for the right-handed one we do the transpose, s=s_, s_-1, s_-2. This allows us to progressively build up the scalar coefficients needed in a SIMD-friendly fashion. More...
|
|
template<typename Float , int nColor, bool dagger, bool xpay, Dslash5Type type, bool shared, bool var_inverse, typename Arg > |
__device__ __host__ void | quda::dslash5inv (Arg &arg, int parity, int x_cb, int s) |
| Apply the M5 inverse operator at a given site on the lattice. More...
|
|
template<typename Float , int nColor, bool dagger, bool xpay, Dslash5Type type, bool shared, bool var_inverse, typename Arg > |
__global__ void | quda::dslash5invGPU (Arg arg) |
| CPU kernel for applying the M5 inverse operator. More...
|
|