12#if (defined __cplusplus)
35 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
55 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
74 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa);
93 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa);
153 Complex_f *gamval,
int *gamin,
float *dk4m,
float *dk4p,
float akappa);
172 Complex_f *gamval,
int *gamin,
float *dk4m,
float *dk4p,
float akappa);
175 unsigned int *iu,
unsigned int *
id,
int *
hu,
int *
hd,
double *dk4m,
double *dk4p,\
176 float *dk4m_f,
float *dk4p_f,
int *gamin,
Complex *gamval,
Complex_f *gamval_f,\
177 Complex_f jqq,
float akappa,
float beta,
double ancg);
182 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa,\
183 dim3 dimGrid, dim3 dimBlock);
185 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa,\
186 dim3 dimGrid, dim3 dimBlock);
188 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa,dim3 dimGrid, dim3 dimBlock);
190 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa, dim3 dimGrid, dim3 dimBlock);
193 Complex_f *gamval_f,
int *gamin,
float *dk4m_f,
float *dk4p_f,
Complex_f jqq_f,
float akappa_f,\
194 dim3 dimGrid, dim3 dimBlock);
196 Complex_f *gamval_f,
int *gamin,
float *dk4m_f,
float *dk4p_f,
Complex_f jqq_f,
float akappa_f,\
197 dim3 dimGrid, dim3 dimBlock);
199 Complex_f *gamval_f,
int *gamin,
float *dk4m_f,
float *dk4p_f,
float akappa_f,dim3 dimGrid, dim3 dimBlock);
201 Complex_f *gamval_f,
int *gamin,
float *dk4m_f,
float *dk4p_f,
float akappa_f, dim3 dimGrid, dim3 dimBlock);
212 void Transpose_z(
Complex *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
213 void Transpose_c(
Complex_f *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
214 void Transpose_d(
double *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
215 void Transpose_f(
float *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
216 void Transpose_I(
int *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
217 void Transpose_U(
unsigned int *out,
const int fast_in,
const int fast_out,
const dim3 dimGrid,
const dim3 dimBlock);
219#if (defined __cplusplus)
225 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
227 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
Complex_f jqq,
float akappa);
229 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa);
231 Complex *gamval,
int *gamin,
double *dk4m,
double *dk4p,
float akappa);
234 __shared__
Complex_f *gamval,
int *gamin,
float *dk4m,
float *dk4p,
Complex_f jqq,
float akappa);
236 __shared__
Complex_f *gamval_d,
int *gamin_d,
const float *dk4m,
const float *dk4p,
const Complex_f jqq,
const float akappa);
239 const __shared__
Complex_f gamval[20],
const __shared__
int gamin[16],
const float *dk4m,
const float *dk4p,
const float akappa);
241 const __shared__
Complex_f gamval[20],
const __shared__
int gamin[16],
const float *dk4m,
const float *dk4p,
const float akappa);
242template <
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 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 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 *dk4m, float *dk4p, Complex_f jqq, float akappa)
Evaluates in single 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 Hdslashd_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 *dk4m, float *dk4p, float akappa)
Evaluates in single precision.
int Hdslash(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.
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 *dk4m, float *dk4p, Complex_f jqq, float akappa)
Evaluates in single precision.
int Hdslash_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 *dk4m, float *dk4p, 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.