matrix assembling time
rxk at cfdrc.com
Tue Mar 17 11:41:59 CDT 2009
Hi Barry and others
For the iterative solver, you mentioned there is much less to gain by
However, you also said we should have a reasonable ordering before
generating the linear system.
Suppose I already have already assembled a large system in parallel (with
will reordering the system help to solve the system or not?
Do we have to do this before the assembling to PETSs solver?
In this case, I think we will need to renumbering all the nodes and/or
cells, not only processor-wise but globally considering the ghost cells.
Is there alternative way such as explicit asking PETSc to reordering the
assembled linear system?
From: petsc-users-bounces at mcs.anl.gov
[mailto:petsc-users-bounces at mcs.anl.gov]On Behalf Of Barry Smith
Sent: Friday, March 13, 2009 6:55 PM
To: PETSc users list
Subject: Re: matrix assembling time
On Mar 13, 2009, at 12:48 PM, Ravi Kannan wrote:
> This is Ravi Kannan from CFD Research Corporation. One basic
> question on
> the ordering of linear solvers in PETSc: If my A matrix (in AX=B) is a
> sparse matrix and the bandwidth of A (i.e. the distance between non
> elements) is high, does PETSc reorder the matrix/matrix-equations so
> as to
> solve more efficiently.
Depends on what you mean. All the direct solvers use reorderings
to reduce fill and hence limit memory and flop usage.
The iterative solvers do not. There is much less to gain by
reordering for iterative
solvers (no memory gain and only a relatively smallish improved cache
The "PETSc approach" is that one does the following
1) partitions the grid across processors (using a mesh partitioner)
2) numbers the grid on each process in a reasonable ordering
BEFORE generating the linear system. Thus the sparse matrix
a good layout from the layout of the grid. So if you do 1) and 2) then
reordering is needed.
More information about the petsc-users