Contributors:
Abstract: Large sparse matrices arise naturally by discretization of PDEs.
Solving PDEs is a core driver for applications in High Performance Computing, having various use cases in different computational areas from fundamental physics to Computational Engineering.
In these computations the sparse matrix-vector (SpMV) and sparse matrix-matrix multiplication (SpMM) kernels play an essential role to perform robust, efficient and quick simulations.
We present usage modes and application results of a very general, yet performant Sparse BLAS library (LIBRSB) providing such kernels for shared-memory architectures.
LIBRSB is fairly portable across machines and programming languages -- it provides interfaces to C, C++, Fortran, GNU Octave and Python.
As part of the PRACE-6IP project "LyNcs" collaboration, LIBRSB's SpMM kernels have been rewritten from scratch.
Using a Lattice QCD matrix kernel from the LyNcs project, we present current SpMM performance results on a modern processor and comment on that.