[petsc-dev] [petsc-maint #57017] Hypre

Barry Smith bsmith at mcs.anl.gov
Wed Dec 1 08:18:42 CST 2010


On Dec 1, 2010, at 2:44 AM, Laurent Michel wrote:

> Hi,
> 
>    * OS Version: Linux iacspc3 2.6.31-22-generic #68-Ubuntu SMP Tue Oct
>      26 16:37:17 UTC 2010 x86_64 GNU/Linux
>    * PETSc Version: Fri Apr 30 20:23:44 CDT 2010
>    * MPI implementation: openmpi
>    * Compiler: g++
>    * Probable PETSc component: PC
> 
> My question is about the use of preconditioner Hypre. I have a colleague 
> who uses hypre directly and solves more or less the same kind of problem 
> as I do. His code scales pretty well (3D Navier-Stokes) and I wanted to 
> try hypre in mine, in order to see what happens. Indeed, for my problem, 
> it's known that the algebraic Schwarz method will not scale that good 
> (this also what I have noticed during my numerical experiments). Anyway, 
> I've tried to run my code with the following additional options:
> 
> -pc_type hypre -pc_hypre_type euclid
> 
> and it takes forever to solve the linear system (I mean, to apply the 
> preconditioner and then actually solve the system).

   Likely Euclid is a bad preconditioner for your problem. Run with -log_summary -ksp_converged_reason to completion and then look at the output to see where it is spending all the time. If the time is truely dominated by PCSetUp and or PCApply or requires many many iterations then Euclid is the problem. We've found the Euclid doesn't scale or perform particularlly well.

   If your problem is a "Stokes" like problem that just throwing a generic preconditioner like Euclid at it without doing something special for the fact that it is "Stokes like" problem won't work well. Perhaps Jed has some suggestions.

   Barry

> 
> I'm using the MPIAIJ matrix format, with MatMPIAIJSetPreallocationCSR. 
> Should I use another format? I've been struggling looking for 
> documentation about this. Where can I find any further information?
> 
> Regards,
> 
> L.
> 
> -- 
> Laurent Michel
> PhD candidate
> EPFL SB IACS ASN
> MA C2 644
> +41 21 693 42 46
> +41 77 433 38 94
> 
> 




More information about the petsc-dev mailing list