|
123456789101112131415161718192021222324252627282930313233343536373839 |
- /*!
- \file matmul.h
- \brief Matrix multiplication implementation.
-
- \author Nikos Pitsianis
- \author Dimitris Floros
- \author Christos Choutouridis 8997 <cchoutou@ece.auth.gr>
- \date 2020-05-05
- */
- #ifndef SRC_MATMUL_H_
- #define SRC_MATMUL_H_
-
- #include <stdlib.h>
-
- #define MAX_ITER 10
- #define sub2ind(i,j,n) (j) + (i)*(n)
-
- //! Function pointer type to matrix multiplication back-end.
- typedef void (*mMult_ft)(float * const, float const * const, float const * const, int const);
- typedef void (*mMultBlock_ft)(float * const, float const * const, float const * const, int const, int const);
-
- void matrixMult_ijk(float * const C, float const * const A, float const * const B, int const n);
- void matrixMult_ikj(float * const C, float const * const A, float const * const B, int const n);
- void matrixMult_jik(float * const C, float const * const A, float const * const B, int const n);
- void matrixMult_jki(float * const C, float const * const A, float const * const B, int const n);
- void matrixMult_kij(float * const C, float const * const A, float const * const B, int const n);
- void matrixMult_kji(float * const C, float const * const A, float const * const B, int const n);
-
- void matrixMult_ijk_block(float * const C, float const * const A, float const * const B, int const n, int const s);
- void matrixMult_ikj_block(float * const C, float const * const A, float const * const B, int const n, int const s);
- void matrixMult_jik_block(float * const C, float const * const A, float const * const B, int const n, int const s);
- void matrixMult_jki_block(float * const C, float const * const A, float const * const B, int const n, int const s);
- void matrixMult_kij_block(float * const C, float const * const A, float const * const B, int const n, int const s);
- void matrixMult_kji_block(float * const C, float const * const A, float const * const B, int const n, int const s);
-
-
- float* matrixInit(int const n);
-
- #endif /* SRC_MATMUL_H_ */
|