Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

MKL Sparse and BLAS Sparse Format

ajayakumar
Beginner
333 Views

Hi,

I noticed a difference between the BLAS Sparse API specification (Which is Object Oriented uses handles for Matrices) and MKL Sparse Specification which has direct calls for sparse storage formats for example like mkl_dcsrsymv or mkl_dcoosymv .

Is there is any specific reason or advantage for MKL to follow this approach.

Thanks.

Ajay

0 Kudos
1 Reply
Sergey_K_Intel1
Employee
333 Views
Dear Ajay,

There exist several object oriented proposals for Sparse BLAS. I assume you mean the design document for the Sparse Basic Linear Algebra Subprograms located on netlib.org. A modified part of the document was published later in ACM Transaction on Mathematical Software.

There were many reasons to use classical interfaces similar to dense BLAS . Let me list two of them. The object oriented design from netlib.org has not been implemented and at the time of making decision it was not clear how popular would the design be among the users. The other concern about object oriented interfaces is the performance. Sparse BLAS level 2 routines work very fast and the usage of object oriented interfaces causes additional overhead and in some cases the overhead might be larger than computation time.

All the best

Sergey

0 Kudos
Reply