Basic Linear Algebra Subroutines
Linear algebra is at the core of many mathematical concepts. In addition to high level functions such as Dot , Transpose , and Outer , the Wolfram Language provides, both direct access to and extensions of much of the Basic Linear Algebra Subroutines (BLAS) library. For some applications, these can provide a performance boost.
BLAS 1
ASUM — compute the sum of absolute values of vector elements
AXPY — add a vector to a scalar multiple of another vector
COPY — copy a vector to another vector
DOT — dot product of two vectors
DOTC — conjugate dot product of two vectors
IAMAX — position of the vector element with the maximum absolute value
NRM2 — compute the Euclidean norm of a vector
ROT — apply a Givens rotation to a pair of vectors
ROTG — compute the parameters for a Givens rotation
SCAL — multiply a vector by a scalar
SWAP — swap two vectors
BLAS 2
GEMV — add a vector to the product of a matrix and another vector
GER — rank-one update of a matrix
GERC — rank-one update of a complex-valued matrix
SYMV — add a vector to the product of a symmetric matrix and another vector
SYR — symmetric rank-one update of a matrix
TRMV — add a vector to the product of a triangular matrix and another vector
TRSV — solve a triangular system of linear equations
TBSV — solve a triangular system of linear equations using a banded representation
BLAS 3
GEMM — add a matrix to the product of two other matrices
HERK — Hermitian rank-k update of a matrix
SYRK — symmetric rank-k update of a matrix
TRMM — computes the product of a triangular matrix and another matrix
TRSM — solve triangular systems of linear equations