Skip to content

5401 MatrixMarket Collections

Kirill Terekhov edited this page Sep 22, 2015 · 8 revisions

Test solvers on MatrixMarket collections.

This test is located in Tests/solver_test001


Test solvers and tune parameters on huge set of public domain matrices.


This test will run solvers in serial against symmetric or non-symmetric real problems from Harwell-Boing collection, Sparskit collection, NEP collection, as well as University of Florida Collection, and other collections available from

Main purpose of this test is to assess robustness of internal solver during development. During develpement no performance gain should be accepted if as a results of the gain solver robustness narrows.

Another purpose is to tune solver's parameters for the optimal performance on some subset of matrices.


The test have three parameters:

  • [integer] Solver type
    • 0 - BiCGStab(L) with second order ILU preconditioner
    • 1 - BiCGStab(L) with second order Crout-ILU preconditioner with inverse-based condition estimation and reordering for diagonal dominance
    • 2 - Petsc solvers
    • 3 - Aztec solver from Trilinos
    • 4 - Aztec solver from Trilinos with Ifpack preconditioner
    • 5 - Aztec solver from Trilinos with ML preconditioner
    • 6 - Belos solver from Trilinos, currently no preconditioner
    • 7 - serial BiCG with second order ILU from ANI3D package
  • [string] Path to matrix
  • [string] Path to file with options for solvers, may be empty
  • [string] Path to right hand side, may be empty. If empty right hand side is filled with ones.

##CMake tests

Will generate lots of solver_test001_* tests.

To activate testing with options file add SOLVER_TEST001_OPTIONS_FILE string with the absolute path to file.


Currently internal solver INNER_MPTILUC is capable of solving 95% of the SPARSKIT set on default parameters.


You can’t perform that action at this time.