GinkgoOneAPI

Hartwig Anzt

Hartwig Anzt

Knoxville, Tennessee

In this project, we want to explore the potential of having an Intel OneAPI backend for the Gingko software package: https://ginkgo-project.github.io/ ...learn more

Project status: Concept

oneAPI, HPC

Intel Technologies
oneAPI, DPC++, Intel FPGA, Intel GPA

Code Samples [1]Links [2]

Overview / Usage

In this project, we want to explore the possibility of adding an IntelOneAPI backend to Ginkgo to run on Intel GPUs.

Ginkgo is * sparse linear algebra * iterative solvers, preconditioners, sparse core operations (sparse BLAS) * currently running on multicore CPU (OpenMP), AMD (HIP) and NVIDIA (CUDA) GPUs * C++ * Currently the best-performing single-node sparse Linear Algebra library * Currently the only single-node sparse Linear Algebra library with native support for NVIDIA GPUs, AMD GPUs, OpenMP platforms * expected to replace MAGMA-sparse in future

MathWorks has in its Matlab library something called "Parallel Computing Toolbox". This is for scientists that want to run on parallel architectures, i.e. NVIDIA GPUs. Inside, there is a set of dense direct solvers (LU) and iterative methods (CG, BiCGSTAB, BiCG, CGS, QMR, TFQMR, etc). Currently, the sparse iterative functionality is coming from MAGMA-sparse (written by myself, Hartwig Anzt). MAGMA-sparse will fade out, and we are is looking into replacing it with Ginkgo. This comes with several benefits: cross-platform portability (NVIDIA and AMD GPUs), C++ (smart pointers), a more sophisticated software lifecycle and sustainability. Currently, we are benchmarking a Ginkgo backend for Matlab.

2.. MathWorks uses SuiteSparse for some sparse linear algebra computations. I don’t have any indication that they’re planning to replace it with GINKGO.

SuiteSparse contains sparse direct solvers. Ginkgo contains sparse iterative solvers. There are no plans to replace SuiteSparse as a direct solver, but to use Ginkgo for sparse iterative functionality.

Ginkgo's sophisticated library design, superior algorithmic functionality and cross-platform performance have gained significant attention in the HPC area. A few examples are:

https://insidehpc.com/2019/12/podcast-developing-multiprecision-algorithms-with-the-ginkgo-library-project/

https://bssw.io/blog_posts/porting-the-ginkgo-package-to-amd-s-hip-ecosystem

https://bssw.io/blog_posts/the-art-of-writing-scientific-software-in-an-academic-environment

* Ginkgo is part of the US Exascale computing project and of the extreme-scale Scientific Software Development Kit (https://xsdk.info)

Repository

https://github.com/ginkgo-project/ginkgo

Collaborators

6 Results

6 Results

Comments (0)