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
