0

What is the state of the art for fastest linear solver for sparse, positive semi definite and strictly diagonally dominant matrix with N varies from ~700 to ~3000, and about a 1/16 of the matrix is non zero values?
(an existing library is preferred over an algorithm - C/C++).

Thanks.

rursw1
  • 83
  • 1
  • 7
  • 2
    These are small enough that the thread-parallelized dense solvers like the LAPACK routines in the MKL are probably the fastest choice. What have you been using? Octave can solve a $3000 \times 3000$ dense random linear system on my laptop, serially in less than half a second. What's your workload look like? Do you need to solve millions of these? – Bill Barth Sep 09 '14 at 13:00
  • I'm a bit confused by the Question statement. If a square matrix is strictly diagonally dominant, then it is nonsingular. Consequently positive semi-definite would become positive definite. Am I misunderstanding the situation? – hardmath Sep 10 '14 at 01:51
  • I don't have enough rep to vote for the dupe, but http://scicomp.stackexchange.com/questions/14497/solving-lx-b-for-big-sparse-laplacian-matrices asks about graph Laplacian matrices and there's a simple reduction from SDD systems to graph Laplacians. – tmyklebu Sep 10 '14 at 02:51

1 Answers1

1

There are two major linear algebra packages for scientific computing.

Trilinos: http://trilinos.org/ it si purely object oriented c++. This is a collection of packages, the one I would start with is Epetra.

PETSc: Not fully object oriented, c. http://www.mcs.anl.gov/petsc/

Lately, I am working great with the linear algebra facilities in dealII, (OO library for finite elements, c++). http://www.dealii.org/

Thought, if the dimension of your problem is that small, you probably do not need a compiled language. Python will do!