[petsc-users] Mat Off Proc Entries

Matthew Knepley knepley at gmail.com
Tue Nov 20 10:53:20 CST 2018


On Tue, Nov 20, 2018 at 11:41 AM Jared Crean via petsc-users <
petsc-users at mcs.anl.gov> wrote:

> Hello,
>
>    What is the difference between MAG_IGNORE_OFF_PROC_ENTRIES and
> MAT_NO_OFF_PROC_ENTRIES?  The docs describe the first one as dropping
> off proc entries, and the second one talks about avoiding reductions in
> MatAssembly routines.  If I have a matrix where each process only
> assembles into the local part, should I set one or both of the flags?
>

I believe they are operating in different places. IGNORE_OFF_PROC_ENTRIES
is used in MatSetValues(),
where any values not owned by this process is ignored instead of put in the
stash. However, MatAssemblyBegin()
still does a reduction even if stashes are empty.  NO_OFF_PROC_ENTRIES
tells AssemblyBegin() to skip
the reduction and do no communication at all. If you have a purely local
matrix, then both make sense.

  Thanks,

    Matt


>      Jared Crean

-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20181120/213fcf4e/attachment.html>


More information about the petsc-users mailing list