Developer Reference for Intel® oneAPI Math Kernel Library for C
Supported Inspector-Executor Sparse BLAS Operations
The Inspector-executor Sparse BLAS API can perform several operations involving sparse matrices. These notations are used in the description of the operations:
\(A\), \(B\) and \(C\) are sparse matrices with \(T\) representing a triangular sparse matrix
\(X\) and \(Y\) are dense matrices
\(x\) and \(y\) are dense vectors
\(\alpha\) and \(\beta\) are scalars
\(op(A)\) represents a possible transposition of matrix \(A\)
\(op(A) = A\)
\(op(A) = A^{T}\) - transpose of \(A\)
\(op(A) = A^{H}\) - conjugate transpose of \(A\)
\(op(A)^{-1}\) denotes the inverse of \(op(A)\) .
The Inspector-executor Sparse BLAS routines support the following operations:
computing the vector product between a sparse matrix and a dense vector: \(y \leftarrow \alpha op(A)\cdot x + \beta\cdot y\)
solving a single triangular system for \(y\): \(y \leftarrow \alpha\cdot\text{inv}(op(T))\cdot x\)
computing a product between a sparse matrix and a dense matrix: \(Y \leftarrow \alpha\cdot op(A)\cdot X + \beta\cdot Y\)
computing a product between sparse matrices with a sparse result: \(C \leftarrow \alpha\cdot op(A)\cdot op(B)\)
computing a product between sparse matrices with a dense result: \(Y \leftarrow \alpha\cdot op(A)\cdot op(B) + \beta\cdot Y\)
computing a sum of sparse matrices with a sparse result: \(C \leftarrow \alpha\cdot op(A) + B\)
solving a sparse triangular system with multiple right-hand sides: \(Y \leftarrow \alpha\cdot\text{inv}(op(T))\cdot X\)