Closed mzuzek closed 1 year ago
@fnrizzi
refs #451
Contents
Tpetra-block level-3 pressio::ops::product() (i.e. performing C = alpha * op(A) * op(B) + beta * C) overloads:
pressio::ops::product()
C = alpha * op(A) * op(B) + beta * C
A
B
C
transpose
nontranspose
Test cases for Tpetra-block level-3 implementations of pressio::ops::product() (op(A) is always transpose and op(B) is always nontranspose):
mv_T_mv_storein_eigen_C
Tpetra::BlockMultiVector
Eigen::MatrixXd
mv_T_self_storein_eigen_C
mv_T_self_create_result_eigen_C
mv_T_self_storein_eigen_C_beta0
mv_T_self_storein_kokkos_C
mv_T_self_storein_kokkos_C_beta0
Kokkos::View<double**, Kokkos::LayoutLeft>
mv_T_mv_storein_kokkos_C
mv_T_mv_storein_kokkos_C_beta0
thanks @fnrizzi for your review!
@fnrizzi
refs #451
Contents
Overloads
Tpetra-block level-3
pressio::ops::product()
(i.e. performingC = alpha * op(A) * op(B) + beta * C
) overloads:A
B
C
transpose
nontranspose
(returned value)
transpose
nontranspose
(self product)
transpose
nontranspose
(self product)
(returned value)
transpose
nontranspose
(self product)
transpose
nontranspose
(self product)
(returned value)
transpose
nontranspose
transpose
nontranspose
Test coverage
Test cases for Tpetra-block level-3 implementations of
pressio::ops::product()
(op(A) is alwaystranspose
and op(B) is alwaysnontranspose
):A
B
C
mv_T_mv_storein_eigen_C
Tpetra::BlockMultiVector
Tpetra::BlockMultiVector
Eigen::MatrixXd
mv_T_self_storein_eigen_C
Tpetra::BlockMultiVector
Eigen::MatrixXd
mv_T_self_create_result_eigen_C
mv_T_self_storein_eigen_C_beta0
Tpetra::BlockMultiVector
Tpetra::BlockMultiVector
Eigen::MatrixXd
mv_T_self_storein_kokkos_C
mv_T_self_storein_kokkos_C_beta0
Tpetra::BlockMultiVector
Kokkos::View<double**, Kokkos::LayoutLeft>
mv_T_mv_storein_kokkos_C
mv_T_mv_storein_kokkos_C_beta0
Tpetra::BlockMultiVector
Tpetra::BlockMultiVector
Kokkos::View<double**, Kokkos::LayoutLeft>