· Contributors · Organizations · Search
Exploiting Dynamic Sparse Matrices for Performance Portable Linear Algebra Operations
DescriptionSparse matrices and linear algebra are at the heart of scientific simulations. The adoption of dynamic sparse matrices that can change the underlying data-structure to match the computation at runtime without introducing prohibitive overheads has the potential of optimizing performance through dynamic format selection. We introduce Morpheus, a library that provides an efficient abstraction for dynamic sparse matrices. The adoption of dynamic matrices aims to improve the productivity of developers and end-users who want to take advantage of the optimization opportunity to improve the performance of their applications, remaining unaware of the format specific details. We demonstrate that by porting HPCG to use Morpheus, and without further code changes, 1) HPCG can now target heterogeneous environments and 2) the performance of the SpMV kernel is improved up to 2.5x and 7x on CPUs and GPUs respectively, through runtime selection of the best format on each MPI process.