Intel® oneAPI Math Kernel Library Developer Reference - C
BLAS routine names have the following structure:
<character> <name> <mod> ( )
The <character> field indicates the data type:
real, single precision
complex, single precision
real, double precision
complex, double precision
Some routines and functions can have combined character codes, such as sc or dz.
For example, the function scasum uses a complex input array and returns a real value.
The <name> field, in BLAS level 1, indicates the operation type. For example, the BLAS level 1 routines ?dot, ?rot, ?swap compute a vector dot product, vector rotation, and vector swap, respectively.
In BLAS level 2 and 3, <name> reflects the matrix argument type:
general matrix
general band matrix
symmetric matrix
symmetric matrix (packed storage)
symmetric band matrix
Hermitian matrix
Hermitian matrix (packed storage)
Hermitian band matrix
triangular matrix
triangular matrix (packed storage)
triangular band matrix.
The <mod> field, if present, provides additional details of the operation. BLAS level 1 names can have the following characters in the <mod> field:
conjugated vector
unconjugated vector
Givens rotation construction
BLAS level 2 names can have the following characters in the <mod> field:
matrix-vector product
solving a system of linear equations with a single unknown vector
rank-1 update of a matrix
rank-2 update of a matrix.
BLAS level 3 names can have the following characters in the <mod> field:
matrix-matrix product
solving a system of linear equations with multiple unknown vectors
rank-k update of a matrix
rank-2k update of a matrix.
The examples below illustrate how to interpret BLAS routine names:
ddot |
<d> <dot>: double-precision real vector-vector dot product |
cdotc |
<c> <dot> <c>: complex vector-vector dot product, conjugated |
scasum |
<sc> <asum>: sum of magnitudes of vector elements, single precision real output and single precision complex input |
cdotu |
<c> <dot> <u>: vector-vector dot product, unconjugated, complex |
sgemv |
<s> <ge> <mv>: matrix-vector product, general matrix, single precision |
ztrmm |
<z> <tr> <mm>: matrix-matrix product, triangular matrix, double-precision complex. |
Sparse BLAS level 1 naming conventions are similar to those of BLAS level 1. For more information, see Naming Conventions.