Using parMetis in petsc for ordering

Barry Smith bsmith at mcs.anl.gov
Thu Jan 11 21:53:24 CST 2007


  In parallel matrix-vector products (used by all the KSP methods)
the amount of communication is the number of "cut-edges" of the 
graph of the matrix. By repartitioning with metis this reduces the
number of cut edges.

  Note: we don't actually advocate doing it this way. One should
partition the underlying grid (finite element etc) then generate
the matrix. If one does this then you do not repartition the matrix.

  Barry


On Thu, 11 Jan 2007, Dimitri Lecas wrote:

> Barry Smith a écrit :
> >   
> > On Thu, 11 Jan 2007, Dimitri Lecas wrote:
> > 
> >   
> > > Barry Smith a �crit :
> > >     
> > > >   Dimitri,
> > > > 
> > > >    No, I think this is not the correct way to look at things. Load
> > > > balancing the original matrix is not neccessarily a good thing for
> > > > doing an LU factorization (in fact it is likely just to make the LU
> > > > factorization have much more fill and require much more floating
> > > > operations).   Packages like SuperLU_dist and Mumps have their own
> > > > internal ordering
> > > > routines that are specifically for getting a good ordering for doing
> > > > the parallel LU factorization, you should just have these solvers
> > > > use them (which they do automatically).
> > > > 
> > > >    Barry
> > > > 
> > > > 
> > > > On Thu, 11 Jan 2007, Dimitri Lecas wrote:
> > > > 
> > > >         
> > > I'am no longer talking about doing LU factorization. But use iterative
> > > method
> > > for solving a linear system, like bicg. Like in the ex10. In this example
> > > i
> > > don't understand why using MatPartitioning.
> > >     
> > 
> >   Please rephrase the question. Are you asking why one should do the
> > partition or why one should not? Are you asking in the case where the matrix
> > is read from
> > disk or generated in a parallel program?
> > 
> >   
> I try to understand the interest to call MatPartitioning before solving the
> linear system with the same matrix. (Like ksp/examples/tutorials/ex10.c).
> 
> 


More information about the petsc-users mailing list