Commits

Jed Brown committed d000d36

Vec: document when InsertMode cannot change between reassemblies

When using VEC_SUBSET_OFF_PROC_ENTRIES, the header is currently not
re-communicated. If the receiving process did not set any values
itself, it would have no way to determine which InsertMode should be
used. The restriction can be lifted by sending the InsertMode at the
start of each integer message, but that would require out-of-place
message packing.

Comments (0)

Files changed (1)

src/vec/vec/interface/vector.c

 -     VEC_SUBSET_OFF_PROC_ENTRIES, which causes VecAssemblyBegin() to assume that the off-process
           entries will always be a subset (possibly equal) of the off-process entries set on the
           first assembly.  This reuses the communication pattern, thus avoiding a global reduction.
+          Subsequent assemblies setting off-process values should use the same InsertMode as the
+          first assembly.
+
+   Developer Note:
+   The InsertMode restriction could be removed by packing the stash messages out of place.
 
    Level: intermediate