On Wed, Jun 9, 2010 at 12:02 AM, Andreas Hauffe <span dir="ltr"><<a href="mailto:andreas.hauffe@tu-dresden.de">andreas.hauffe@tu-dresden.de</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
I tried to find out if the matrix gets corrupted in the multiple process case.<br>
So I wrote both matrices (single/multiple process) to an ASCII file. Both<br>
files contained the same matrix. The diff command printed no difference.<br>
<br>
I use a MPISBAIJ matrix. So I think it is impossible to create an unsymmetric<br>
matrix. Is this right?<br></blockquote><div><br></div><div>Write the matrix as a PETSc binary and send it to <a href="mailto:petsc-maint@mcs.anl.gov">petsc-maint@mcs.anl.gov</a>.</div><div><br></div><div> Thanks,</div>
<div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Andreas<br>
<br>
Am Dienstag 08 Juni 2010 17:59:01 schrieb Matthew Knepley:<br>
<div><div></div><div class="h5">> On Tue, Jun 8, 2010 at 12:33 AM, Andreas Hauffe <<br>
><br>
> <a href="mailto:andreas.hauffe@tu-dresden.de">andreas.hauffe@tu-dresden.de</a>> wrote:<br>
> > Dear all,<br>
> ><br>
> > I want to solve a linear System with a symmetric positive definite<br>
> > matrix. I<br>
> > use the external package MUMPS as solver with the following commands<br>
> ><br>
> > call KSPCreate(PETSC_COMM_WORLD,ksp,ierr)<br>
> > call KSPSetOperators(ksp,mat,mat,DIFFERENT_NONZERO_PATTERN,ierr)<br>
> > call KSPSetType(ksp,KSPPREONLY,ierr)<br>
> > call KSPGetPC(ksp,prec,ierr)<br>
> > call PCSetType(prec,PCCHOLESKY,ierr)<br>
> > call PCFactorSetMatSolverPackage(prec,MAT_SOLVER_MUMPS,ierr)<br>
> > call KSPSetFromOptions(ksp,ierr)<br>
> > call KSPSolve(ksp,vec1,vec2,ierr)<br>
> ><br>
> > and give the option "-mat_mumps_sym 1" (symmetric positive definite).<br>
> ><br>
> > If I run the program with one MPI-process everything works fine. For a<br>
> > low number of unknows it also works for more MPI-processes. If I increase<br>
> > the number of unknows (>50000) and use more then one MPI-process on one<br>
> > or more host, I get a MUMPS error that the matrix is singular. With one<br>
> > MPI-process everything is still fine. The critical value for the number<br>
> > of unknows depends also on the use of the debug-version or<br>
> > non-debug-version of PETSc. If I do not use the option "-mat_mumps_sym 1"<br>
> > everything also works.<br>
><br>
> It sounds like your matrix is not actually symmetric on multiple processes:<br>
><br>
> <a href="http://www.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpa" target="_blank">http://www.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpa</a><br>
>ges/Mat/MatIsSymmetric.html<br>
><br>
> Matt<br>
><br>
> > Right now the finite element assembling process (MatSetValue) is only<br>
> > done with rank 0. So the hole matrix gets all its values only from rank<br>
> > 0.<br>
> ><br>
> > Could someone explain this behaviour? Where is my error?<br>
> ><br>
> > Btw, I am currently using PETSc 3.0 since I work with SLEPc as well.<br>
> ><br>
> > Thank you very much,<br>
> > --<br>
> > Andreas Hauffe<br>
> ><br>
> ><br>
> > -------------------------------------------------------------------------<br>
> >--------------------------- Technische Universität Dresden<br>
> > Institut für Luft- und Raumfahrttechnik / Institute of Aerospace<br>
> > Engineering<br>
> > Lehrstuhl für Luftfahrzeugtechnik / Chair of Aircraft Engineering<br>
> ><br>
> > D-01062 Dresden<br>
> > Germany<br>
> ><br>
> > phone : (++49)351 463 38496<br>
> > fax : (++49)351 463 37263<br>
> > mail : <a href="mailto:andreas.hauffe@tu-dresden.de">andreas.hauffe@tu-dresden.de</a><br>
> > Website : <a href="http://tu-dresden.de/mw/ilr/lft" target="_blank">http://tu-dresden.de/mw/ilr/lft</a><br>
> ><br>
> > -------------------------------------------------------------------------<br>
> >---------------------------<br>
<br>
<br>
<br>
--<br>
Andreas Hauffe<br>
<br>
----------------------------------------------------------------------------------------------------<br>
Technische Universität Dresden<br>
Institut für Luft- und Raumfahrttechnik / Institute of Aerospace Engineering<br>
Lehrstuhl für Luftfahrzeugtechnik / Chair of Aircraft Engineering<br>
<br>
D-01062 Dresden<br>
Germany<br>
<br>
phone : (++49)351 463 38496<br>
fax : (++49)351 463 37263<br>
mail : <a href="mailto:andreas.hauffe@tu-dresden.de">andreas.hauffe@tu-dresden.de</a><br>
Website : <a href="http://tu-dresden.de/mw/ilr/lft" target="_blank">http://tu-dresden.de/mw/ilr/lft</a><br>
----------------------------------------------------------------------------------------------------<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener<br>