[petsc-users] Preconditioning Diagnostics

Alfredo J Duarte Gomez aduarteg at utexas.edu
Tue May 3 10:58:53 CDT 2022

Good morning PETSC team,

I have a bit of an open question on diagnosing preconditioner performance.

For a bit of background, I am using the TS object in combination with the
matrix-free snes, and a custom user defined preconditioner (PCSHELL).
Everything is implemented with the help of a DMDA. Smallest problem size
that I can get away with is a grid with 2.1 million points with 4 fields
each, for a total of 8.4 million equations.

The preconditioner works very well overall, but at some stages of the
solution it performs poorly, evidenced by significant increases in the
number of GMRES iterations and the maximum/minimum eigenvalue computed
using KSPComputeExtremeSingularValues().

I am trying to understand the locations where the preconditioner is not
working well, so for example, is there any way to map the maximum
eigenvalue to a particular location/field in the DMDA. Alternatively, are
there any other ways of diagnosing where the preconditioner is not doing a
good job?

GMRES iterations and the max/min eigenvalue provide a good overall picture,
but I am struggling to get preconditioner metrics that are specific to a
location and field.

So far I have taken a close look at fields such as the residual, and Newton
updates, but it is difficult to tell how to assess these in combination
with the preconditioner.

I appreciate any suggestions.

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/20220503/95a359ac/attachment-0001.html>

More information about the petsc-users mailing list