QDP++
qdp_scalarsite_sse_blas_double.h File Reference

Generic Scalarsite optimization hooks. More...

Go to the source code of this file.

Classes

struct  QDP::ordered_sse_vaxOpy4_double_user_arg
struct  QDP::unordered_sse_vaxOpy4_double_user_arg
struct  QDP::ordered_sse_vaxOpyz4_double_user_arg
struct  QDP::unordered_sse_vaxOpyz4_double_user_arg
struct  QDP::ordered_sse_vscal4_double_user_arg
struct  QDP::unordered_sse_vscal4_double_user_arg
struct  QDP::ordered_sse_vaxOpby4_double_user_arg
struct  QDP::ordered_sse_vaxOpbyz4_double_user_arg
struct  QDP::unordered_sse_vaxOpbyz4_double_user_arg
struct  QDP::ordered_norm_double_user_arg
struct  QDP::ordered_inner_product_double_user_arg

Namespaces

namespace  QDP
 Yet another random number generator.
namespace  QDP::ThreadReductions
namespace  QDP::QDP

Macros

#define QDP_DISPATCH_H
#define QDPXX_MESSAGE(s)
#define QDP_CONFIG_H
#define QDP_SCALARSITE_GENERIC_BLAS_DOUBLE_WRAPPER_H

Typedefs

typedef PSpinVector< PColorVector< RComplex< REAL64 >, 3 >, 4 > QDP::DVec
typedef PScalar< PScalar< RScalar< REAL64 > > > QDP::DScal

Functions

static const char *const QDP::QDP_PACKAGE (PACKAGE)
static const char *const QDP::QDP_PACKAGE_BUGREPORT (PACKAGE_BUGREPORT)
static const char *const QDP::QDP_PACKAGE_NAME (PACKAGE_NAME)
static const char *const QDP::QDP_PACKAGE_STRING (PACKAGE_STRING)
static const char *const QDP::QDP_PACKAGE_TARNAME (PACKAGE_TARNAME)
static const char *const QDP::QDP_PACKAGE_VERSION (PACKAGE_VERSION)
static const char *const QDP::QDP_VERSION (VERSION)
int QDP::QDP::qdpNumThreads ()
int QDP::QDP::qdpThreadNum ()
template<class Arg>
void QDP::QDP::dispatch_to_threads (int numSiteTable, Arg a, void(*func)(int, int, int, Arg *))
void QDP::ordered_sse_vaxOpy4_double_evaluate_function (int lo, int hi, int myId, ordered_sse_vaxOpy4_double_user_arg *a)
void QDP::unordered_sse_vaxOpy4_double_evaluate_function (int lo, int hi, int myId, unordered_sse_vaxOpy4_double_user_arg *a)
void QDP::ordered_sse_vaxOpyz4_double_evaluate_function (int lo, int hi, int myId, ordered_sse_vaxOpyz4_double_user_arg *a)
void QDP::unordered_sse_vaxOpyz4_double_evaluate_function (int lo, int hi, int myId, unordered_sse_vaxOpyz4_double_user_arg *a)
void QDP::ordered_sse_vscal4_double_evaluate_function (int lo, int hi, int myId, ordered_sse_vscal4_double_user_arg *a)
void QDP::unordered_sse_vscal4_double_evaluate_function (int lo, int hi, int myId, unordered_sse_vscal4_double_user_arg *a)
void QDP::ordered_sse_vaxOpby4_double_evaluate_function (int lo, int hi, int myId, ordered_sse_vaxOpby4_double_user_arg *a)
void QDP::ordered_sse_vaxOpbyz4_double_evaluate_function (int lo, int hi, int myId, ordered_sse_vaxOpbyz4_double_user_arg *a)
void QDP::unordered_sse_vaxOpbyz4_double_evaluate_function (int lo, int hi, int myId, unordered_sse_vaxOpbyz4_double_user_arg *a)
void QDP::ordered_norm_double_func (int lo, int hi, int myId, ordered_norm_double_user_arg *a)
void QDP::ordered_inner_product_double_func (int lo, int hi, int myId, ordered_inner_product_double_user_arg *a)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAddAssign &op, const QDPExpr< BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpSubtractAssign &op, const QDPExpr< BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, Reference< QDPType< DVec, OLattice< DVec > > >, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, Reference< QDPType< DVec, OLattice< DVec > > >, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAddAssign &op, const QDPExpr< BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpSubtractAssign &op, const QDPExpr< BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, Reference< QDPType< DVec, OLattice< DVec > > >, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, Reference< QDPType< DVec, OLattice< DVec > > >, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpMultiplyAssign &op, const QDPExpr< UnaryNode< OpIdentity, Reference< QDPType< DScal, OScalar< DScal > > > >, OScalar< DScal > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpDivideAssign &op, const QDPExpr< UnaryNode< OpIdentity, Reference< QDPType< DScal, OScalar< DScal > > > >, OScalar< DScal > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAddAssign &op, const QDPExpr< UnaryNode< OpIdentity, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpSubtractAssign &op, const QDPExpr< UnaryNode< OpIdentity, Reference< QDPType< DVec, OLattice< DVec > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpAdd, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, BinaryNode< OpMultiply, Reference< QDPType< DScal, OScalar< DScal > > >, Reference< QDPType< DVec, OLattice< DVec > > > >, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
void QDP::evaluate (OLattice< DVec > &d, const OpAssign &op, const QDPExpr< BinaryNode< OpSubtract, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > >, BinaryNode< OpMultiply, Reference< QDPType< DVec, OLattice< DVec > > >, Reference< QDPType< DScal, OScalar< DScal > > > > >, OLattice< DVec > > &rhs, const Subset &s)
template<>
UnaryReturn< OLattice< DVec >, FnNorm2 >::Type_t QDP::norm2 (const QDPType< DVec, OLattice< DVec > > &s1, const Subset &s)
template<>
UnaryReturn< OLattice< DVec >, FnNorm2 >::Type_t QDP::norm2 (const QDPType< DVec, OLattice< DVec > > &s1)
template<>
BinaryReturn< OLattice< DVec >, OLattice< DVec >, FnInnerProduct >::Type_t QDP::innerProduct (const QDPType< DVec, OLattice< DVec > > &v1, const QDPType< DVec, OLattice< DVec > > &v2)
template<>
BinaryReturn< OLattice< DVec >, OLattice< DVec >, FnInnerProduct >::Type_t QDP::innerProduct (const QDPType< DVec, OLattice< DVec > > &v1, const QDPType< DVec, OLattice< DVec > > &v2, const Subset &s)
template<>
BinaryReturn< OLattice< DVec >, OLattice< DVec >, FnInnerProductReal >::Type_t QDP::innerProductReal (const QDPType< DVec, OLattice< DVec > > &v1, const QDPType< DVec, OLattice< DVec > > &v2)
template<>
BinaryReturn< OLattice< DVec >, OLattice< DVec >, FnInnerProductReal >::Type_t QDP::innerProductReal (const QDPType< DVec, OLattice< DVec > > &v1, const QDPType< DVec, OLattice< DVec > > &v2, const Subset &s)
template<>
UnaryReturn< OLattice< DVec >, FnNorm2 >::Type_t QDP::norm2 (const multi1d< OLattice< DVec > > &s1)
template<>
BinaryReturn< OLattice< DVec >, OLattice< DVec >, FnInnerProduct >::Type_t QDP::innerProduct (const multi1d< OLattice< DVec > > &v1, const multi1d< OLattice< DVec > > &v2)
template<>
BinaryReturn< OLattice< DVec >, OLattice< DVec >, FnInnerProductReal >::Type_t QDP::innerProductReal (const multi1d< OLattice< DVec > > &v1, const multi1d< OLattice< DVec > > &v2)

Detailed Description

Generic Scalarsite optimization hooks.

Definition in file qdp_scalarsite_sse_blas_double.h.

Macro Definition Documentation

◆ QDP_CONFIG_H

#define QDP_CONFIG_H

◆ QDP_DISPATCH_H

#define QDP_DISPATCH_H

◆ QDP_SCALARSITE_GENERIC_BLAS_DOUBLE_WRAPPER_H

#define QDP_SCALARSITE_GENERIC_BLAS_DOUBLE_WRAPPER_H

Definition at line 3 of file qdp_scalarsite_sse_blas_double.h.

◆ QDPXX_MESSAGE

#define QDPXX_MESSAGE ( s)