3
$\begingroup$

I have a sparse $2\times10^5$ by $2\times10^5$ matrix with $3.2\times10^9$ non-zero elements.

I want a sparse solver with out-of-core functionality. I have attempted to use Intel's MKL pardiso, with a varying degree of success. For smaller problems, it is stellar, but for the problem size above, it is taking a huge amount of RAM (even with the out-of-core enabled), presumably during fill-in reducing ordering stage.

The intel staff has been incredibly helpful with debugging several problems, but I feel that it might be prudent to try a different solver.

Is there any good reference comparing the performance of solvers for big problems?

$\endgroup$
  • $\begingroup$ Does your problem has a structure that could be exploited ? You used a sparse direct solver, would it be possible to use an iterative solver instead ? (conjugate gradient), that has smaller memory requirements. $\endgroup$ – BrunoLevy Oct 21 '15 at 10:06
  • $\begingroup$ The matrices in question have very little structure. They are not symmetric, nor diagonal. However, the non-zeros for each row are contiguous (i.e. there are no zeros interrupting a stretch of values). That's the strongest claim I can make about the structure. $\endgroup$ – ivan-k Oct 21 '15 at 17:59
  • $\begingroup$ and did you try an iterative solver ? (GMRES or BiCGSTAB for instance), with compressed row storage, it may fit in RAM. Do you have an idea of the conditioning ? $\endgroup$ – BrunoLevy Oct 21 '15 at 21:05
  • $\begingroup$ I did not try any iterative solvers - I suppose that is a reasonable next step. I would need to run some calculations to figure out the condition numbers for the problem. My guess is that they will vary wildly with the parameters. $\endgroup$ – ivan-k Oct 22 '15 at 4:23
2
$\begingroup$

If you decide to go with a direct solver, you may consider the following options:

  • Intel MKL Pardiso, which you have already tried
  • MUMPS, that is another very popular choice for parallel direct solvers and has an out-of-core capability
  • HSL, free for academic use, consider HSL_MA78, sparse out-of-core solver

Several years ago, I added to my collection the following paper that compares the performance of those three libraries for Navier-Stokes FEM:

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.