Simd Library Documentation.

Home | Release Notes | Download | Documentation | Issues | GitHub
Matrix Operations

Matrix operations. More...

Functions

SIMD_API void SimdGemm32fNN (size_t M, size_t N, size_t K, const float *alpha, const float *A, size_t lda, const float *B, size_t ldb, const float *beta, float *C, size_t ldc)
 Performs general matrix multiplication (for 32-bit float numbers). More...
 
SIMD_API void SimdGemm32fNT (size_t M, size_t N, size_t K, const float *alpha, const float *A, size_t lda, const float *B, size_t ldb, const float *beta, float *C, size_t ldc)
 Performs general matrix multiplication (for 32-bit float numbers). More...
 

Detailed Description

Matrix operations.

Function Documentation

◆ SimdGemm32fNN()

void SimdGemm32fNN ( size_t  M,
size_t  N,
size_t  K,
const float *  alpha,
const float *  A,
size_t  lda,
const float *  B,
size_t  ldb,
const float *  beta,
float *  C,
size_t  ldc 
)

Performs general matrix multiplication (for 32-bit float numbers).

C(M, N) = alpha*A(M, K)*B(K, N) + beta*C(M, N);
Note
This function supports multithreading (See functions SimdGetThreadNumber and SimdSetThreadNumber).
Parameters
[in]M- a height of A and height of C matrices.
[in]N- a width of B and width of C matrices.
[in]K- a width of A and height of B matrices.
[in]alpha- a pointer to multiplier of the first term.
[in]A- a pointer to input A matrix.
[in]lda- a leading dimension of A matrix.
[in]B- a pointer to input B matrix.
[in]ldb- a leading dimension of B matrix.
[in]beta- a pointer to multiplier of the second term.
[out]C- a pointer to output C matrix.
[in]ldc- a leading dimension of C matrix.

◆ SimdGemm32fNT()

void SimdGemm32fNT ( size_t  M,
size_t  N,
size_t  K,
const float *  alpha,
const float *  A,
size_t  lda,
const float *  B,
size_t  ldb,
const float *  beta,
float *  C,
size_t  ldc 
)

Performs general matrix multiplication (for 32-bit float numbers).

C(M, N) = alpha*A(M, K)*Trans(B(N, K)) + beta*C(M, N);
Note
This function supports multithreading (See functions SimdGetThreadNumber and SimdSetThreadNumber).
Parameters
[in]M- a height of A and height of C matrices.
[in]N- a height of B and width of C matrices.
[in]K- a width of A and width of B matrices.
[in]alpha- a pointer to multiplier of the first term.
[in]A- a pointer to input A matrix.
[in]lda- a leading dimension of A matrix.
[in]B- a pointer to input B matrix.
[in]ldb- a leading dimension of B matrix.
[in]beta- a pointer to multiplier of the second term.
[out]C- a pointer to output C matrix.
[in]ldc- a leading dimension of C matrix.