On Tue, Jun 17, 2008 at 15:22, John Peterson <[EMAIL PROTECTED]> wrote:
> On Tue, Jun 17, 2008 at 8:09 AM, Jan Biermann <[EMAIL PROTECTED]> wrote:
>> Hi,
>> I would like to use ILU preconditioning in parallel. Here, Petsc provides an
>> interface to BlockSolve95 but requires the matrix format MPIBAIJ. So far
>> MPIAIJ is standard in libmesh. Do you think I can just change the matrix
>> format or does that cause any problems (with parmetis or whatever)?
>
> I've often wondered this myself...unfortunately I don't know enough
> about the different Petsc matrix types to say for sure.  If you do get
> something working, for example a user-selectable PETSc matrix type, we
> would definitely be interested in getting it in the library.

I'm not sure what you mean and I don't have source code in front of
me, but what is wrong with this?

MatCreate()
MatSetType() // default
MatSetFromOptions()
MatMPIAIJSetPreallocation()
MatMPIBAIJSetPreallocation()
MatSeqAIJSetPreallocation()
MatSeqBAIJSetPreallocation()
// you can call all of these and they will be a no-op if the type does
not match.

>> Or do you have any idea how to work arround that?
>
> There are a couple other parallel ILU implementations in hypre, pilut
> (unsupported but still works) and euclid.  I'm not sure what your
> research goals are, but I and some others have typically gotten better
> performance from block jacobi ... it's not as good a preconditioner
> but it's enough faster than the parallel ILU implementations to make
> it attractive on a wall-clock time basis.

Or domain decomposition preconditioners (try -pc_type asm and play
with -sub_xxx options) which can often be made much stronger than
block jacobi with only a modest increase in communication costs.  If
the conditioning is really bad, iterative substructuring would be
worth checking out, but it requires a lot more programming effort.

Jed

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to