The X-ScalePETSc library is a version of the PETSc library co-designed with the MVAPICH2 MPI library. It uses a bidirectional exchange of information between the PETSc and MVAPICH2 libraries to optimize the interprocessor communication within PETSc. It provides both the co-designed PETSc library and the MVAPICH2 MPI library that the PETSc library was co-designed with.


  • Optimized small to medium message intra-node CPU-CPU communication for MatMult — the PETSc matrix-vector multiplication kernel widely used in its iterative solvers and preconditioners.
  • Applicable to MATMPIAIJ matrix type and its subclasses.
  • Based on PETSc 3.20.4 and MVAPICH2 2.3.7.
  • No change to the PETSc API from the PETSc user side. 
  • Up to 13% MatMult kernal-level benefit and 10% application-level benefit for small problem sizes.




Interested in a free product demo? Email us at