<div dir="ltr"><div><div><div>The wonderful people of PETSc have made a comprehensible list of all the included algorithms and whether they work in parallel or not.<br><br></div>It is here: <a href="http://www.mcs.anl.gov/petsc/documentation/linearsolvertable.html">http://www.mcs.anl.gov/petsc/documentation/linearsolvertable.html</a><br><br></div>Have a great day<br></div>Lukas<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Feb 15, 2017 at 8:26 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
> On Feb 15, 2017, at 7:03 AM, lixin chu <<a href="mailto:lixin_chu@yahoo.com">lixin_chu@yahoo.com</a>> wrote:<br>
><br>
> I think the chapter 4 of the user manual more or less answers my first question already ...<br>
><br>
> rgds<br>
> lixin<br>
><br>
><br>
> On Wednesday, 15 February 2017, 14:40, lixin chu <<a href="mailto:lixin_chu@yahoo.com">lixin_chu@yahoo.com</a>> wrote:<br>
><br>
><br>
> Hello,<br>
> New to PETSc, appreciate any help -<br>
><br>
> I have done some experiment with MUMPS (the direct solver for sparse matrix), and very interested to try out PETSc now. I have a large sparse symmetric matrix (3 millions x 3 millions, complex data type).<br>
><br>
> Some questions I have:<br>
> - I am assuming that I should select one algorithm of "Krylov methods", which algorithm is a good option, GMRES, CG, or others ? (I am not a domain expert, but helping developing a program to test the matrix).<br>
<br>
GMRES is a "safe" choice. You can try -ksp_type cg -ksp_cg_type symmetric (or if the matrix is hermitian; i.e. transpose A = complex conjugate of A then type hermitian instead of symmetric).<br>
<br>
<br>
> - do all the algorithms support distributed architecture (multiple machines, multiple cores)<br>
<br>
Yes<br>
<br>
> - are there any performance test data ? (total run time for example)<br>
<br>
Run your code with -view_summary and it will print information at the end about where it has spent the time doing the computation.<br>
<br>
<br>
><br>
><br>
> thank you very much,<br>
> LX<br>
><br>
><br>
<br>
</blockquote></div><br></div>