[petsc-users] Solver/Preconditioner suggestions

Alfredo J Duarte Gomez aduarteg at utexas.edu
Thu May 19 12:27:12 CDT 2022

Good afternoon PETSC users,

I am looking for some suggestions on preconditioners/solvers.

Currently, I have a custom preconditioner that solves 4 independent
systems, let's call them A,B,C, and D.

A is an advective, diffusive, reactive system, although due to some
coefficient it is the system with the highest condition number and
therefore the most difficult to solve.

B and C, are more "standard" advective, diffusion, reactive systems. The
condition number is not as high as A.

D is simply the laplacian used to solve an elliptic Poisson equation.

For more context, A,B, and C need to be recomputed about once every time
step, while D is a one time cost.

The problem is 2-D, sizes are on the order of 1-10 million grid points, and
I am using a structured grid. These usually run on somewhere between
100-400 processors.

Currently  I am solving A,B, and C with the HYPRE Euclid algorithm ILU(1),
and D is solved with the direct solver MUMPS.

While these were very useful to get the code working, I am now trying to
get better parallel scaling/efficiencies and performance. HYPRE euclid does
not seem to scale super well beyond like 60 procs, and MUMPS has very large
memory requirements.

Does anyone have suggestions on more scalable ILU algorithms for A,B, and
C, or any other good alternatives?

>From what I have read, multigrid methods are probably the best alternative
for D, but I have very little experience with these and they seem to
require a lot of parameters. Does anyone have pointers on a good setup for
a multigrid preconditioner?

Thank you and have a good day,


Alfredo Duarte
Graduate Research Assistant
The University of Texas at Austin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20220519/a6cb0306/attachment.html>

More information about the petsc-users mailing list