[Dune] communication patterns in ISTL
Christian Engwer
christian.engwer at uni-muenster.de
Wed Dec 20 21:35:51 CET 2017
Dear all,
can someone enlighten me?
What is the meaning of copyCopyToAll::copyCopyToAll(...)?
It seems strange to me. We start with a partition of indices according
to owner and then we might have copies of indices owned by an other
process.
Now, copyCopyToAll is supposed to communicate those indices tagged as
copy to all other processes having this index. But what is this
supposed to do?
a) Assume that the copies don't contain consistent values. Now every
process is sending around his own value. Depending on which message
arrives last the receiving process gets an arbitrary value. This
seems to be wrong and we consequently we should not be allowed to
call copyCopyToAll, if the copies are not consistent.
b) assume we have consistent copies. Why should be communicate at all?
The copies are sent around, but we retrieve the value that we
previously sent to an other process.
It seems I misunderstood something dramatically.
Best
Christian
PS: the two functions
OwnerOverlapCopyCommunication::addOwnerOverlapToAll and
OwnerOverlapCopyCommunication::addOwnerCopyToAll are not used in ISTL
at all. Is anybody using them outside of the core modules?
More information about the Dune
mailing list