28 #include <cusp/format.h>
29 #include <cusp/csr_matrix.h>
30 #include <cusp/detail/functional.h>
49 template <
typename Matrix,
62 cudaDeviceSynchronize();
68 template <
typename Matrix,
81 cudaDeviceSynchronize();
87 template <
typename Matrix1,
99 cudaDeviceSynchronize();
107 template <
typename MV,
116 cudaDeviceSynchronize();
122 template <
typename ValueType,
125 void axpby(
const ValueType&
A,
const MV1& X,
const ValueType&
B,
131 cudaDeviceSynchronize();
138 template <
typename Matrix,
139 typename MatrixOrVector1,
140 typename MatrixOrVector2>
142 const MatrixOrVector1&
B,
146 typename Matrix::format(),
147 typename MatrixOrVector1::format(),
148 typename MatrixOrVector2::format());
151 template <
typename Matrix,
152 typename MatrixOrVector1,
153 typename MatrixOrVector2>
155 const MatrixOrVector1&
B,
159 typename Matrix::format(),
160 typename MatrixOrVector1::format(),
161 typename MatrixOrVector2::format());
void spmm_MVdot(const Vector1 &A, const Vector2 &x, Vector3 &y)
#define TEUCHOS_FUNC_TIME_MONITOR(FUNCNAME)
void MVmultiply(const Matrix &A, const Vector1 &B, Vector2 &C, cusp::sparse_format, cusp::array2d_format, cusp::array2d_format)
void spmm_csr_vector(const Matrix &A, const Vector2 &x, Vector3 &y)
void OVmultiply(const Matrix &A, const Vector1 &B, Vector2 &C, cusp::sparse_format, cusp::array2d_format, cusp::array2d_format)
void spmm_axpby(const ValueType &a, const Vector1 &x, const ValueType &b, const Vector1 &y, Vector2 &z)
void spmm_dense_diag(const Vector1 &A, const Vector2 &x, Vector3 &y)
void axpby(const ValueType &A, const MV1 &X, const ValueType &B, const MV1 &Y, MV2 &Z)
void MVdot(const MV &A, const MV1 &B, MV2 &C)