oneMKL icon indicating copy to clipboard operation
oneMKL copied to clipboard

[CUDA] Add support for cuSparse

Open jasonsewall-intel opened this issue 5 years ago • 4 comments

oneMKL provides support for sparse BLAS operations, and NVIDIA provides an interface to sparse BLAS operations optimized for their hardware in the cuSparse library. Much as oneMKL provides support for cuBLAS, I propose it add support for cuSparse.

The unified interface provided by oneMKL will be much more convenient for users interested in performance portability across platform sets that include NVIDIA GPUs.

The mechanisms and design work that are relevant for cuBLAS are likely to be reusable for this work. Because sparse interfaces are generally younger and more flexible, it may be that this is best done incrementally.

jasonsewall-intel avatar Jun 15 '20 21:06 jasonsewall-intel

Hi @jasonsewall-intel! oneMKL open source project doesn't contain at this moment Sparse interfaces, but we plan to add them in the future. With that cuSparse can be enabled under DPC++ APIs similarly as it was done for cuBLAS. We also encourage to contribute to open source and help us enable new interfaces, libraries and HWs. If you are interested, we can inform you once Sparse DPC++ APIs are available.

jasukhar avatar Jun 15 '20 21:06 jasukhar

Hi @jasukhar One of the library (Hypre) with SYCL backend wanted to tap into oneMKL cuSparse support and wanted to check if there were plans to support cuSolver

abagusetty avatar Feb 09 '23 13:02 abagusetty

Tagging @spencerpatty

mmeterel avatar Feb 09 '23 15:02 mmeterel

The first step would be to add Sparse BLAS APIs to the current oneMKL Interfaces project. Once that is done,  it should be straightforward to add cuSparse support. While we won't be adding sparse APIs in the near term due to other priorities, we encourage anyone who is interested to contribute to this open source project and to help enable new interfaces, libraries and HWs as needed.

spencerpatty avatar Feb 09 '23 17:02 spencerpatty