|
void | quda::blas::init () |
|
void | quda::blas::destroy () |
|
void | quda::blas::setParam (int kernel, int prec, int threads, int blocks) |
|
void | quda::blas::zero (ColorSpinorField &a) |
|
void | quda::blas::copy (ColorSpinorField &dst, const ColorSpinorField &src) |
|
void | quda::blas::ax (double a, ColorSpinorField &x) |
|
void | quda::blas::axpbyz (double a, ColorSpinorField &x, double b, ColorSpinorField &y, ColorSpinorField &z) |
|
void | quda::blas::xpy (ColorSpinorField &x, ColorSpinorField &y) |
|
void | quda::blas::mxpy (ColorSpinorField &x, ColorSpinorField &y) |
|
void | quda::blas::axpy (double a, ColorSpinorField &x, ColorSpinorField &y) |
|
void | quda::blas::axpby (double a, ColorSpinorField &x, double b, ColorSpinorField &y) |
|
void | quda::blas::xpay (ColorSpinorField &x, double a, ColorSpinorField &y) |
|
void | quda::blas::xpayz (ColorSpinorField &x, double a, ColorSpinorField &y, ColorSpinorField &z) |
|
void | quda::blas::axpyZpbx (double a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z, double b) |
|
void | quda::blas::axpyBzpcx (double a, ColorSpinorField &x, ColorSpinorField &y, double b, ColorSpinorField &z, double c) |
|
void | quda::blas::caxpby (const Complex &a, ColorSpinorField &x, const Complex &b, ColorSpinorField &y) |
|
void | quda::blas::caxpy (const Complex &a, ColorSpinorField &x, ColorSpinorField &y) |
|
void | quda::blas::caxpbypczw (const Complex &a, ColorSpinorField &x, const Complex &b, ColorSpinorField &y, const Complex &c, ColorSpinorField &z, ColorSpinorField &w) |
|
void | quda::blas::cxpaypbz (ColorSpinorField &, const Complex &b, ColorSpinorField &y, const Complex &c, ColorSpinorField &z) |
|
void | quda::blas::caxpbypzYmbw (const Complex &, ColorSpinorField &, const Complex &, ColorSpinorField &, ColorSpinorField &, ColorSpinorField &) |
|
void | quda::blas::caxpyBzpx (const Complex &, ColorSpinorField &, ColorSpinorField &, const Complex &, ColorSpinorField &) |
|
void | quda::blas::caxpyBxpz (const Complex &, ColorSpinorField &, ColorSpinorField &, const Complex &, ColorSpinorField &) |
|
void | quda::blas::cabxpyAx (double a, const Complex &b, ColorSpinorField &x, ColorSpinorField &y) |
|
void | quda::blas::caxpyXmaz (const Complex &a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
|
void | quda::blas::caxpyXmazMR (const double &a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
|
void | quda::blas::tripleCGUpdate (double alpha, double beta, ColorSpinorField &q, ColorSpinorField &r, ColorSpinorField &x, ColorSpinorField &p) |
|
double | quda::blas::norm1 (const ColorSpinorField &b) |
|
double | quda::blas::norm2 (const ColorSpinorField &a) |
|
double | quda::blas::axpyReDot (double a, ColorSpinorField &x, ColorSpinorField &y) |
|
double | quda::blas::reDotProduct (ColorSpinorField &x, ColorSpinorField &y) |
|
double | quda::blas::axpbyzNorm (double a, ColorSpinorField &x, double b, ColorSpinorField &y, ColorSpinorField &z) |
|
double | quda::blas::axpyNorm (double a, ColorSpinorField &x, ColorSpinorField &y) |
|
double | quda::blas::xmyNorm (ColorSpinorField &x, ColorSpinorField &y) |
|
Complex | quda::blas::cDotProduct (ColorSpinorField &, ColorSpinorField &) |
|
double3 | quda::blas::cDotProductNormA (ColorSpinorField &a, ColorSpinorField &b) |
|
double3 | quda::blas::cDotProductNormB (ColorSpinorField &a, ColorSpinorField &b) |
| Return (a,b) and ||b||^2 - implemented using cDotProductNormA. More...
|
|
double3 | quda::blas::caxpbypzYmbwcDotProductUYNormY (const Complex &a, ColorSpinorField &x, const Complex &b, ColorSpinorField &y, ColorSpinorField &z, ColorSpinorField &w, ColorSpinorField &u) |
|
double | quda::blas::caxpyNorm (const Complex &a, ColorSpinorField &x, ColorSpinorField &y) |
|
double | quda::blas::caxpyXmazNormX (const Complex &a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
|
double | quda::blas::cabxpyzAxNorm (double a, const Complex &b, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
|
Complex | quda::blas::caxpyDotzy (const Complex &a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
|
Complex | quda::blas::axpyCGNorm (double a, ColorSpinorField &x, ColorSpinorField &y) |
|
double3 | quda::blas::HeavyQuarkResidualNorm (ColorSpinorField &x, ColorSpinorField &r) |
|
double3 | quda::blas::xpyHeavyQuarkResidualNorm (ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &r) |
|
double3 | quda::blas::tripleCGReduction (ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
|
double4 | quda::blas::quadrupleCGReduction (ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
|
double | quda::blas::quadrupleCG3InitNorm (double a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z, ColorSpinorField &w, ColorSpinorField &v) |
|
double | quda::blas::quadrupleCG3UpdateNorm (double a, double b, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z, ColorSpinorField &w, ColorSpinorField &v) |
|
void | quda::blas::axpy (const double *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y) |
| Compute the block "axpy" with over the set of ColorSpinorFields. E.g., it computes y = x * a + y The dimensions of a can be rectangular, e.g., the width of x and y need not be same. More...
|
|
void | quda::blas::axpy (const double *a, ColorSpinorField &x, ColorSpinorField &y) |
| This is a wrapper for calling the block "axpy" with a composite ColorSpinorField. E.g., it computes y = x * a + y. More...
|
|
void | quda::blas::axpy_U (const double *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y) |
| Compute the block "axpy_U" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::axpy_U (const double *a, ColorSpinorField &x, ColorSpinorField &y) |
| This is a wrapper for calling the block "axpy_U" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::axpy_L (const double *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y) |
| Compute the block "axpy_L" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::axpy_L (const double *a, ColorSpinorField &x, ColorSpinorField &y) |
| This is a wrapper for calling the block "axpy_U" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::caxpy (const Complex *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y) |
| Compute the block "caxpy" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::caxpy (const Complex *a, ColorSpinorField &x, ColorSpinorField &y) |
| This is a wrapper for calling the block "caxpy" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::caxpy_U (const Complex *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y) |
| Compute the block "caxpy_U" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::caxpy_U (const Complex *a, ColorSpinorField &x, ColorSpinorField &y) |
| This is a wrapper for calling the block "caxpy_U" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::caxpy_L (const Complex *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y) |
| Compute the block "caxpy_L" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::caxpy_L (const Complex *a, ColorSpinorField &x, ColorSpinorField &y) |
| This is a wrapper for calling the block "caxpy_U" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::caxpyz (const Complex *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y, std::vector< ColorSpinorField * > &z) |
| Compute the block "caxpyz" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::caxpyz (const Complex *a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
| This is a wrapper for calling the block "caxpyz" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::caxpyz_U (const Complex *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y, std::vector< ColorSpinorField * > &z) |
| Compute the block "caxpyz" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::caxpyz_U (const Complex *a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
| This is a wrapper for calling the block "caxpyz" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::caxpyz_L (const Complex *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y, std::vector< ColorSpinorField * > &z) |
| Compute the block "caxpyz" with over the set of ColorSpinorFields. E.g., it computes. More...
|
|
void | quda::blas::caxpyz_L (const Complex *a, ColorSpinorField &x, ColorSpinorField &y, ColorSpinorField &z) |
| This is a wrapper for calling the block "caxpyz" with a composite ColorSpinorField. E.g., it computes. More...
|
|
void | quda::blas::axpyBzpcx (const double *a, std::vector< ColorSpinorField * > &x, std::vector< ColorSpinorField * > &y, const double *b, ColorSpinorField &z, const double *c) |
| Compute the vectorized "axpyBzpcx" with over the set of ColorSpinorFields, where the third vector, z, is constant over the batch. E.g., it computes. More...
|
|
void | quda::blas::caxpyBxpz (const Complex *a_, std::vector< ColorSpinorField * > &x_, ColorSpinorField &y_, const Complex *b_, ColorSpinorField &z_) |
| Compute the vectorized "caxpyBxpz" over the set of ColorSpinorFields, where the second and third vector, y and z, is constant over the batch. E.g., it computes. More...
|
|
void | quda::blas::reDotProduct (double *result, std::vector< ColorSpinorField * > &a, std::vector< ColorSpinorField * > &b) |
|
void | quda::blas::cDotProduct (Complex *result, std::vector< ColorSpinorField * > &a, std::vector< ColorSpinorField * > &b) |
| Computes the matrix of inner products between the vector set a and the vector set b. More...
|
|
void | quda::blas::hDotProduct (Complex *result, std::vector< ColorSpinorField * > &a, std::vector< ColorSpinorField * > &b) |
| Computes the matrix of inner products between the vector set a and the vector set b. This routine is specifically for the case where the result matrix is guarantted to be Hermitian. Requires a.size()==b.size(). More...
|
|
void | quda::blas::hDotProduct_Anorm (Complex *result, std::vector< ColorSpinorField * > &a, std::vector< ColorSpinorField * > &b) |
| Computes the matrix of inner products between the vector set a and the vector set b. This routine is specifically for the case where the result matrix is guarantted to be Hermitian. Uniquely defined for cases like (p, Ap) where the output is Hermitian, but there's an A-norm instead of an L2 norm. Requires a.size()==b.size(). More...
|
|
void | quda::blas::cDotProductCopy (Complex *result, std::vector< ColorSpinorField * > &a, std::vector< ColorSpinorField * > &b, std::vector< ColorSpinorField * > &c) |
| Computes the matrix of inner products between the vector set a and the vector set b, and copies b into c. More...
|
|