Quantifying the effect of matrix structure on multithreaded performance of the SpMV kernel

Sparse matrix-vector multiplication (SpMV) is the core operation in many common network and graph analytics, but poor performance of the SpMV kernel handicaps these applications. This work quantifies the effect of matrix structure on SpMV performance, using Intel's VTune tool for the Sandy Bridge architecture. Two types of sparse matrices are considered: finite difference (FD) matrices, which are structured, and R-MAT matrices, which are unstructured. Analysis of cache behavior and prefetcher activity reveals that the SpMV kernel performs far worse with R-MAT matrices than with FD matrices, due to the difference in matrix structure. To address the problems caused by unstructured matrices, novel architecture improvements are proposed.

[1]  K. D. Ikramov Sparse matrices , 2020, Krylov Subspace Methods with Application in Incompressible Fluid Flow Solvers.

[2]  Patrick J. Wolfe,et al.  Detection Theory for Graphs , 2013 .

[3]  Yousef Saad,et al.  Iterative methods for sparse linear systems , 2003 .

[4]  Julia S. Mullen,et al.  PAKCK: Performance and power analysis of key computational kernels on CPUs and GPUs , 2013, 2013 IEEE High Performance Extreme Computing Conference (HPEC).

[5]  Christos Faloutsos,et al.  R-MAT: A Recursive Model for Graph Mining , 2004, SDM.

[6]  Robert A. van de Geijn,et al.  Anatomy of high-performance matrix multiplication , 2008, TOMS.