Neko  0.9.99
A portable framework for high-order spectral element flow simulations
mxm_wrapper Module Reference

Wrapper for all matrix-matrix product implementations.

Data Types

interface  mxm_blas
 
interface  mxm_libxsmm
 

Functions/Subroutines

subroutine, public mxm (a, n1, b, n2, c, n3)
 Compute matrix-matrix product \( C = A \cdot B \) for contiguously packed matrices A,B, and C. More...
 
subroutine, private mxm_blas_sp (a, n1, b, n2, c, n3)
 
subroutine, private mxm_blas_dp (a, n1, b, n2, c, n3)
 
subroutine, private mxm_blas_qp (a, n1, b, n2, c, n3)
 
subroutine, private mxm_libxsmm_sp (a, n1, b, n2, c, n3)
 
subroutine, private mxm_libxsmm_dp (a, n1, b, n2, c, n3)
 
subroutine, private mxm_libxsmm_qp (a, n1, b, n2, c, n3)
 

Function/Subroutine Documentation

◆ mxm()

subroutine, public mxm_wrapper::mxm ( real(kind=rp), dimension(n1, n2), intent(in)  a,
integer, intent(in)  n1,
real(kind=rp), dimension(n2, n3), intent(in)  b,
integer, intent(in)  n2,
real(kind=rp), dimension(n1, n3), intent(inout)  c,
integer, intent(in)  n3 
)

Definition at line 28 of file mxm_wrapper.F90.

Here is the caller graph for this function:

◆ mxm_blas_dp()

subroutine, private mxm_wrapper::mxm_blas_dp ( real(kind=dp), dimension(n1, n2), intent(in)  a,
integer, intent(in)  n1,
real(kind=dp), dimension(n2, n3), intent(in)  b,
integer, intent(in)  n2,
real(kind=dp), dimension(n1, n3), intent(inout)  c,
integer, intent(in)  n3 
)
private

Definition at line 52 of file mxm_wrapper.F90.

◆ mxm_blas_qp()

subroutine, private mxm_wrapper::mxm_blas_qp ( real(kind=qp), dimension(n1, n2), intent(in)  a,
integer, intent(in)  n1,
real(kind=qp), dimension(n2, n3), intent(in)  b,
integer, intent(in)  n2,
real(kind=qp), dimension(n1, n3), intent(inout)  c,
integer, intent(in)  n3 
)
private

Definition at line 62 of file mxm_wrapper.F90.

◆ mxm_blas_sp()

subroutine, private mxm_wrapper::mxm_blas_sp ( real(kind=sp), dimension(n1, n2), intent(in)  a,
integer, intent(in)  n1,
real(kind=sp), dimension(n2, n3), intent(in)  b,
integer, intent(in)  n2,
real(kind=sp), dimension(n1, n3), intent(inout)  c,
integer, intent(in)  n3 
)
private

Definition at line 42 of file mxm_wrapper.F90.

◆ mxm_libxsmm_dp()

subroutine, private mxm_wrapper::mxm_libxsmm_dp ( real(kind=dp), dimension(n1, n2), intent(in)  a,
integer, intent(in)  n1,
real(kind=dp), dimension(n2, n3), intent(in)  b,
integer, intent(in)  n2,
real(kind=dp), dimension(n1, n3), intent(inout)  c,
integer, intent(in)  n3 
)
private

Definition at line 89 of file mxm_wrapper.F90.

◆ mxm_libxsmm_qp()

subroutine, private mxm_wrapper::mxm_libxsmm_qp ( real(kind=qp), dimension(n1, n2), intent(in)  a,
integer, intent(in)  n1,
real(kind=qp), dimension(n2, n3), intent(in)  b,
integer, intent(in)  n2,
real(kind=qp), dimension(n1, n3), intent(inout)  c,
integer, intent(in)  n3 
)
private

Definition at line 106 of file mxm_wrapper.F90.

◆ mxm_libxsmm_sp()

subroutine, private mxm_wrapper::mxm_libxsmm_sp ( real(kind=sp), dimension(n1, n2), intent(in)  a,
integer, intent(in)  n1,
real(kind=sp), dimension(n2, n3), intent(in)  b,
integer, intent(in)  n2,
real(kind=sp), dimension(n1, n3), intent(inout)  c,
integer, intent(in)  n3 
)
private

Definition at line 72 of file mxm_wrapper.F90.