[petsc-users] a question for iterative solver users

Barry Smith bsmith at mcs.anl.gov
Wed May 19 11:29:24 CDT 2010


   For sparse problems coming from a N =  n by n by n 3D grid discretization of PDEs direct solvers end up requiring n^4 memory and n^6 = N^2 work. The best iterative solvers (for example multigrid) if they work well on the problem require only n^3 = N memory and n^3 = N work. So for largish n you can see that direct solvers are no longer practical.

   From my experiences under the right conditions iterative solvers can win at even 10,000 unknowns and definitely by 50,000 and up they easily win but it is very problem dependent. This is exactly why PETSc provides the same interface for direct and iterative solvers, because you cannot know in advance which will win.

    Barry

On May 19, 2010, at 10:15 AM, Umut Tabak wrote:

> Dear all,
> 
> What could be the benefit of iterative solvers(specifically cg or pcg), as a factor, in comparison to direct solvers, on reasonably large sparse systems if one has a well conditioned operator matrix.
> 
> This question might be a bit abstract(like the one above) though I will fire anyway ;) : where does cg or iterative methods really start to beat direct solvers, again for a well conditioned operator matrix? I am asking this from matrix size point of view.
> 
> I could not make, really, use of iterative solvers due to ill-conditioned matrices, however at some point of my algorithm, I have a matrix which seems to be well conditioned but still MATLAB's backslash beats the pcg. This was the reason of the above questions, in a bit awkward order.
> 
> I would like to hear experiences from the general user community if possible.
> 
> Best,
> Umut



More information about the petsc-users mailing list