Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

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, G, V are sparse matrices

  • B and C 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) = AT - transpose of A

  • op(A) = AH - 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 := alpha*op(A)*x + beta*y

  • solving a single triangular system:

    y := alpha*inv(op(A))*x

  • computing a product between a sparse matrix and a dense matrix:

    C := alpha*op(A)*B + beta*C

  • computing a product between sparse matrices with a sparse result:
    V := alpha*op(A)*op(G)
  • computing a product between sparse matrices with a dense result:
    C := alpha*op(A)*op(G)
  • computing a sum of sparse matrices with a sparse result:
    V := alpha*op(A) + G
  • solving a sparse triangular system with multiple right-hand sides:

    C := alpha*inv(op(A))*B