[petsc-users] Number of Matrices with -snes_mf and -snes_mf_operator
Dmitry Karpeev
karpeev at mcs.anl.gov
Thu Mar 1 10:31:06 CST 2012
MatCreate probably gets called inside SNES via MatDuplicate. Set a
breakpoint in MatCreate to catch it.
Dmitry.
On Thu, Mar 1, 2012 at 10:16 AM, Derek Gaston <friedmud at gmail.com> wrote:
> In trying to track down where all of our memory usage is coming from I
> noticed that PETSc is saying that more matrices than I expect are getting
> created. For instance, with -snes_mf I would expect to see just one matrix
> (we always create one, even with -snes_mf)... but instead I'm seeing 2
> (from -log_summary):
>
> Matrix 2 2 1634161540 0
>
> Then when using -snes_mf_operator with ilu as the preconditioner I'm
> actually seeing _3_!
>
> Matrix 3 3 3080557036 0
>
> As you can see, our matrices are fairly heavy (cubic hermites in 3d have a
> heavy sparsity pattern) so it would be awesome to keep the number of them
> down. I've double checked that we're not calling MatCreate more than once
> in our code. So is this expected behavior or am I doing something wrong
> somewhere else? What's the best way to track this down... maybe print a
> stack trace inside MatCreate?
>
> Particulars:
> PETSc 3.1-p8 (yes yes old... ;-)
> Using it through libMesh
>
> Thanks,
> Derek
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120301/bc293c09/attachment.htm>
More information about the petsc-users
mailing list