Go to the documentation of this file.
12 template <
class T, index_t COL_L, index_t ROW_L, index_t COL_R>
17 for (
index_t i=0; i < COL_R; i++) {
18 for (
index_t j=0; j < ROW_L; j++) {
20 for (
index_t k=0; k < COL_L; k++) {
21 tmp += left(k,j) * right(i,k);
29 template<
class T, index_t COL_L, index_t ROW_L>
34 for (
index_t j=0; j < ROW_L; j++) {
36 for (
index_t k=0; k < COL_L; k++) {
37 tmp += left(k,j) * right(k);
44 template <
class T,
int COL_L,
int ROW_L,
int COL_R>
49 for (
index_t i=1; i <= COL_R; i++) {
50 for (
index_t j=1; j <= ROW_L; j++) {
52 for (
index_t k=1; k <= COL_L; k++) {
53 tmp += left(k,j) * right(i,k);
61 template<
class T,
int COL_L,
int ROW_L>
66 for (
index_t j=1; j <= ROW_L; j++) {
68 for (
index_t k=1; k <= COL_L; k++) {
69 tmp += left(k,j) * right(k);
80 template <
class T, index_t COL_L, index_t ROW_L, index_t COL_R>
85 for (
index_t i=0; i < COL_R; i++) {
86 for (
index_t j=0; j < ROW_L; j++) {
88 for (
index_t k=0; k < COL_L; k++) {
89 tmp += left(j,k) * right(k,i);
97 template<
class T, index_t COL_L, index_t ROW_L>
102 for (
index_t j=0; j < ROW_L; j++) {
104 for (
index_t k=0; k < COL_L; k++) {
105 tmp += left(j,k) * right(k);
112 template <
class T,
int COL_L,
int ROW_L,
int COL_R>
117 for (
index_t i=1; i <= COL_R; i++) {
118 for (
index_t j=1; j <= ROW_L; j++) {
120 for (
index_t k=1; k <= COL_L; k++) {
121 tmp += left(j,k) * right(k,i);
129 template<
class T,
int COL_L,
int ROW_L>
134 for (
index_t j=1; j <= ROW_L; j++) {
136 for (
index_t k=1; k <= COL_L; k++) {
137 tmp += left(j,k) * right(k);
#define __YAKL_NAMESPACE_WRAPPER_END__
Definition: YAKL.h:20
This specifies a set of bounds for a dimension when declaring a yakl::FSArray.
Definition: YAKL_FSArray.h:18
#define __YAKL_NAMESPACE_WRAPPER_BEGIN__
Definition: YAKL.h:19
#define YAKL_INLINE
Used to decorate functions called from kernels (parallel_for and parallel_outer) or from CPU function...
Definition: YAKL_defines.h:140
YAKL_INLINE SArray< T, 2, COL_R, ROW_L > matmul_cr(SArray< T, 2, COL_L, ROW_L > const &left, SArray< T, 2, COL_R, COL_L > const &right)
Definition: YAKL_intrinsics_matmul.h:14
unsigned int index_t
Definition: YAKL.h:41
C-style array on the stack similar in nature to, e.g., float arr[ny][nx];
Definition: YAKL_CSArray.h:30
YAKL_INLINE SArray< T, 2, ROW_L, COL_R > matmul_rc(SArray< T, 2, ROW_L, COL_L > const &left, SArray< T, 2, COL_L, COL_R > const &right)
Definition: YAKL_intrinsics_matmul.h:82
Fortran-style array on the stack similar in nature to, e.g., float arr[ny][nx];
Definition: YAKL_FSArray.h:53