<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Apr 23, 2015 at 6:28 AM, anton <span dir="ltr"><<a href="mailto:popov@uni-mainz.de" target="_blank">popov@uni-mainz.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I'm currently calling DMDAVecGet(Restore)Array on a subset of processors. It seems to work correctly. So why does documentation say they are collective on Vec? Are they really? Unlike VecNorm, for example, it's not really clear why DMDAVecGetArray should be collective.<br></blockquote><div><br></div><div>The documentation should be fixed. Its "logically collective" just like VecGetArray(), and unlike VecGetArrayRead().</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Am I still on a safe side, or I'm seriously violating something that's not immediately obvious.<br></blockquote><div><br></div><div>You are violating something that is not obvious. GetArray() will increment the status marker on the Vec since you</div><div>could have changed something, but then you will get inconsistency across processes in this marker, so you could</div><div>make different decisions about whether to recompute norms, etc. Hard to debug errors.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thanks,<br>
Anton<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div>
</div></div>