π€ AI Summary
Software verification of sparse matrix-vector multiplication (SpMV)βa core numerical kernel in high-performance computing (HPC)βlacks standardized, realistic benchmarks, hindering rigorous evaluation of verification tools. Method: This work systematically constructs the first SpMV verification benchmark, implemented within the PETSc framework. It includes rigorously reproduced serial and basic MPI-parallel versions that capture canonical sparse computation patterns used in scientific iterative solvers. An extensible, configurable verification testbed is introduced, supporting assertion injection, fault injection, and result comparison to enhance tool assessment capabilities. Contribution/Results: The open-source, fully reproducible benchmark has been adopted as a standard test suite by multiple verification tools, filling a critical gap in HPC software correctness validation. It establishes a foundational infrastructure for trustworthy software verification in scientific computing, enabling systematic evaluation and advancement of verification methodologies for sparse linear algebra kernels.
π Abstract
Sparse matrix vector multiplication (SpMV) is a fundamental kernel in scientific codes that rely on iterative solvers. In this first part of our work, we present both a sequential and a basic MPI parallel implementations of SpMV, aiming to provide a challenge problem for the scientific software verification community. The implementations are described in the context of the PETSc library.