DSPF_sp_mat_mul_gemm
[Matrix]

Collaboration diagram for DSPF_sp_mat_mul_gemm:


Detailed Description

void DSPF_sp_mat_mul_gemm (float *x1, float const a, const int r1, const int c1, float *x2, const int c2, float *restrict y)


Function Documentation

void DSPF_sp_mat_mul_gemm ( float *  x1,
float const   a,
const int  r1,
const int  c1,
float *  x2,
const int  c2,
float *restrict  y 
)

This function computes the expression y = a*x1*x2+y. The column dimension of x1 must match the row dimension of x2. The values stored in the matrices are assumed to be single-precision floating-point values. This code is suitable for dense matrices. No optimizations are made for sparse matrices.

Parameters:
x1 = Pointer to r1 by c1 input matrix.
a = Scalar value.
r1 = Number of rows in x1.
c1 = Number of columns in x1. Also number of rows in x2.
x2 = Pointer to c1 by c2 input matrix.
c2 = Number of columns in x2.
y = Pointer to r1 by c2 output matrix.
Algorithm:
DSPF_sp_mat_mul_gemm.c is the natural C equivalent of the optimized intrinsic C code withoutrestrictions. Note that the intrinsic C code is optimized and restrictions may apply.
Assumptions:
The arrays x1, x2 and y are stored in distinct arrays. In-place processing is not allowed.
r1, c2 are assumed to be an interger multiple of 4. c1 is assumed to be even.
Implementation Notes:
Interruptibility : The code is interruptible.
Endian support : supports both Little and Big endian modes.


Copyright 2014, Texas Instruments Incorporated