Developer Reference

Contents

Routines and Supported Operations

This section describes operations supported by the
Intel® oneAPI Math Kernel Library
Sparse BLAS Level 2 and Level 3 routines. The following notations are used here:
  • A
    is a sparse matrix;
  • B
    and
    C
    are dense matrices;
  • D
    is a diagonal scaling matrix;
  • x
    and
    y
    are dense vectors;
  • alpha
    and
    beta
    are scalars;
op(
A
)
is one of the possible operations:
  • op(
    A
    ) =
    A
    ;
  • op(
    A
    ) =
    A
    T
    - transpose of
    A
    ;
  • op(
    A
    ) =
    A
    H
    - conjugated transpose of
    A
    .
inv(op(
A
))
denotes the inverse of
op(
A
)
.
The
Intel® oneAPI Math Kernel Library
Sparse BLAS Level 2 and Level 3 routines support the following operations:
  • computing the vector product between a sparse matrix and a dense vector:
    y := alpha*op(A)*x + beta*y
  • solving a single triangular system:
    y := alpha*inv(op(A))*x
  • computing a product between sparse matrix and dense matrix:
    C := alpha*op(A)*B + beta*C
  • solving a sparse triangular system with multiple right-hand sides:
    C := alpha*inv(op(A))*B
Intel® oneAPI Math Kernel Library
provides an additional set of the Sparse BLAS Level 2 routines with
simplified interfaces
. Each of these routines operates on a matrix of the fixed type. The following operations are supported:
  • computing the vector product between a sparse matrix and a dense vector (for general and symmetric matrices):
    y := op(A)*x
  • solving a single triangular system (for triangular matrices):
    y := inv(op(A))*x
Matrix type is indicated by the field <
mtype
> in the routine name (see section Naming Conventions in Sparse BLAS Level 2 and Level 3).
The routines with simplified interfaces support only four sparse matrix storage formats, specifically:
  • CSR format in the 3-array variation accepted in the direct sparse solvers and in the CXML;
  • diagonal format accepted in the CXML;
  • coordinate format;
  • BSR format in the 3-array variation.
Note that routines with both typical (conventional) and simplified interfaces use the same computational kernels that work with certain internal data structures.
The
Intel® oneAPI Math Kernel Library
Sparse BLAS Level 2 and Level 3 routines do not support in-place operations.
Complete list of all routines is given in the
“Sparse BLAS Level 2 and Level 3 Routines”
.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.