[petsc-users] MUMPS error reporting in PETSc-3.7
David Knezevic
david.knezevic at akselos.com
Mon Jun 6 16:38:05 CDT 2016
On Mon, Jun 6, 2016 at 4:16 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
> David,
>
> Actually all the routines for accessing the MUMPS information already
> exist. I have added this to the manual page for MATSOLVERMUMPS
>
> Notes: When a MUMPS factorization fails inside a KSP solve, for
> example with a KSP_DIVERGED_PCSETUP_FAILED, one can find the MUMPS
> information about the failure by calling
> $ KSPGetPC(ksp,&pc);
> $ PCFactorGetMatrix(pc,&mat);
> $ MatMumpsGetInfo(mat,....);
> $ MatMumpsGetInfog(mat,....); etc.
>
> .seealso: PCFactorSetMatSolverPackage(), MatSolverPackage,
> MatMumpsSetICntl(), MatMumpsGetIcntl(), MatMumpsSetCntl(),
> MatMumpsGetCntl(), MatMumpsGetInfo(), MatMumpsGetInfog(),
> MatMumpsGetRinfo(), MatMumpsGetRinfog(), KSPGetPC(), PCGetFactor(),
> PCFactorGetMatrix()
>
> Please let us know if this does not work
>
Thanks! That looks good. I've changed my code to use this, and I'll let you
know if I have any issues with it.
Thanks,
David
> On Jun 5, 2016, at 12:45 PM, David Knezevic <david.knezevic at akselos.com>
> wrote:
> >
> > On Sun, Jun 5, 2016 at 1:42 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
> >
> > > On Jun 5, 2016, at 12:12 PM, David Knezevic <
> david.knezevic at akselos.com> wrote:
> > >
> > > In PETSc-3.6, when I hit an error using the MUMPS solver, I would get
> an error like this:
> > >
> > > [0]PETSC ERROR: --------------------- Error Message
> --------------------------------------------------------------
> > > [0]PETSC ERROR: Error in external library
> > > [0]PETSC ERROR: Error reported by MUMPS in numerical factorization
> phase: INFO(1)=-9, INFO(2)=351513
> > >
> > > In PETSc-3.7, the solver now reports "KSP_DIVERGED_PCSETUP_FAILED"
> instead. The new behavior is definitely better, so thanks for the update!
> However, I'd still be curious to be able to see what error codes MUMPS
> returned (which was previously provided in INFO(1) and INFO(2)), since that
> can be helpful for diagnosing the reason for the solver failure. Is that
> info still available somehow?
> >
> > David,
> >
> > There are a couple of ways to obtain them both clunky, we should
> also provide a simple function call interface such as
> MatMumpsGetInfo(Mat,int *infog,int *info);
> >
> > Anyways right now you can run with -info and it prints the
> information (along with too much other information) or you can run with
> -ksp_error_if_not_converged and then it reverts back to the old behavior of
> stopping immediately and printing the error message and info values.
> >
> >
> > OK, got it, thanks!
> >
> > David
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160606/db6e9566/attachment-0001.html>
More information about the petsc-users
mailing list