13#if (defined __cplusplus)
36 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
56 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
75 Complex *gamval,
int *gamin,
double *dk[2],
float akappa);
94 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa);
154 Complex_f *gamval,
int *gamin,
float *dk[2],
float akappa);
173 Complex_f *gamval,
int *gamin,
float *dk[2],
float akappa);
176 unsigned int *iu,
unsigned int *
id,
int *
hu,
int *
hd,
double *dk4m,
double *dk4p,\
177 float *dk4m_f,
float *dk4p_f,
int *gamin,
Complex *gamval,
Complex_f *gamval_f,\
178 Complex_f jqq,
float akappa,
float beta,
double ancg);
181void Transpose_z(
Complex *out,
const int,
const int);
182void Transpose_c(
Complex_f *out,
const int,
const int);
183void Transpose_d(
double *out,
const int,
const int);
184void Transpose_f(
float *out,
const int,
const int);
185void Transpose_I(
int *out,
const int,
const int);
186void Transpose_U(
unsigned int *out,
const int,
const int);
191 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa,\
192 dim3 dimGrid, dim3 dimBlock);
194 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa,\
195 dim3 dimGrid, dim3 dimBlock);
197 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa,dim3 dimGrid, dim3 dimBlock);
199 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa, dim3 dimGrid, dim3 dimBlock);
202 Complex_f *gamval_f,
int *gamin,
float *dk4m_f,
float *dk4p_f,
Complex_f jqq_f,
float akappa_f,\
203 dim3 dimGrid, dim3 dimBlock);
205 Complex_f *gamval_f,
int *gamin,
float *dk4m_f,
float *dk4p_f,
Complex_f jqq_f,
float akappa_f,\
206 dim3 dimGrid, dim3 dimBlock);
208 Complex_f *gamval_f,
int *gamin,
float *dk_f[2],
float akappa_f,dim3 dimGrid, dim3 dimBlock);
210 Complex_f *gamval_f,
int *gamin,
float *dk_f[2],
float akappa_f, dim3 dimGrid, dim3 dimBlock);
221 void cuTranspose_z(
Complex *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
222 void cuTranspose_c(
Complex_f *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
223 void cuTranspose_d(
double *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
224 void cuTranspose_f(
float *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
225 void cuTranspose_I(
int *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
226 void cuTranspose_U(
unsigned int *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
228#if (defined __cplusplus)
234 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
236 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
238 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa);
240 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa);
243 __shared__
Complex_f *gamval,
int *gamin,
float *dk4m,
float *dk4p,
Complex_f jqq,
float akappa);
245 __shared__
Complex_f *gamval_d,
int *gamin_d,
const float *dk4m,
const float *dk4p,
const Complex_f jqq,
const float akappa);
248 const __shared__
Complex_f gamval[20],
const __shared__
int gamin[16],
const float *dk4m,
const float *dk4p,
const float akappa);
250 const __shared__
Complex_f gamval[20],
const __shared__
int gamin[16],
const float *dk4m,
const float *dk4p,
const float akappa);
251template <
typename T> __global__
void Transpose(T *out,
const T *in,
const int fast_in,
const int fast_out);
unsigned int * hd
Down halo indices.
unsigned int * hu
Up halo indices.
int Hdslashd_f(Complex_f *phi, Complex_f *r, Complex_f *ut[2], unsigned int *iu, unsigned int *id, Complex_f *gamval, int *gamin, float *dk[2], float akappa)
Evaluates in single precision.
int Dslash_f(Complex_f *phi, Complex_f *r, Complex_f *u11t, Complex_f *u12t, unsigned int *iu, unsigned int *id, Complex_f *gamval, int *gamin, float *dk[2], Complex_f jqq, float akappa)
Evaluates in single precision.
int Dslash(Complex *phi, Complex *r, Complex *u11t, Complex *u12t, unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk4m, double *dk4p, Complex_f jqq, float akappa)
Evaluates in double precision.
int Dslashd(Complex *phi, Complex *r, Complex *u11t, Complex *u12t, unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk4m, double *dk4p, Complex_f jqq, float akappa)
Evaluates in double precision.
int Hdslash_f(Complex_f *phi, Complex_f *r, Complex_f *ut[2], unsigned int *iu, unsigned int *id, Complex_f *gamval, int *gamin, float *dk[2], float akappa)
Evaluates in single precision.
int Hdslash(Complex *phi, Complex *r, Complex *u11t[2], unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk[2], float akappa)
Evaluates in double precision.
int Dslashd_f(Complex_f *phi, Complex_f *r, Complex_f *u11t, Complex_f *u12t, unsigned int *iu, unsigned int *id, Complex_f *gamval, int *gamin, float *dk[2], Complex_f jqq, float akappa)
Evaluates in single precision.
int Hdslashd(Complex *phi, Complex *r, Complex *u11t, Complex *u12t, unsigned int *iu, unsigned int *id, Complex *gamval, int *gamin, double *dk4m, double *dk4p, float akappa)
Evaluates in double precision.
#define Complex
Double precision complex number.
#define Complex_f
Single precision complex number.
Function declarations for most of the routines.