Intel MKL provides C and Fortran routines to extend the functionality of the BLAS routines. These include routines to compute vector products, matrix-vector products, and matrix-matrix products.
Intel MKL also provides routines to perform certain data manipulation, including matrix in-place and out-of-place transposition operations combined with simple matrix arithmetic operations. Transposition operations are Copy As Is, Conjugate transpose, Transpose, and Conjugate. Each routine adds the possibility of scaling during the transposition operation by giving some alpha and/or beta parameters. Each routine supports both row-major orderings and column-major orderings.
Table “BLAS-like Extensions” lists these routines.
The <?> symbol in the routine short names is a precision prefix that indicates the data type:
REAL for Fortran interface, or float for C interface
DOUBLE PRECISION for Fortran interface, or double for C interface.
COMPLEX for Fortran interface, or MKL_Complex8 for C interface.
DOUBLE COMPLEX for Fortran interface, or MKL_Complex16 for C interface.
Routine |
Data Types |
Description |
---|---|---|
s, d, c, z |
Scales two vectors, adds them to one another and stores result in the vector (routines) |
|
s, d |
Two matrix-vector products using a general matrix, real data |
|
c, z |
Two matrix-vector products using a general matrix, complex data |
|
c, z |
Computes a scalar-matrix-matrix product using matrix multiplications and adds the result to a scalar-matrix product. |
|
s, d, c, z |
Performs scaling and in-place transposition/copying of matrices. |
|
s, d, c, z |
Performs scaling and out-of-place transposition/copying of matrices. |
|
s, d, c, z |
Performs two-strided scaling and out-of-place transposition/copying of matrices. |
|
s, d, c, z |
Performs scaling and sum of two matrices including their out-of-place transposition/copying. |
Copyright © 1994 - 2011, Intel Corporation. All rights reserved.