On Tue, Oct 30, 2012 at 6:54 AM, Torsten Hoefler <span dir="ltr"><<a href="mailto:htor@illinois.edu" target="_blank">htor@illinois.edu</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div>>>> I don't think  the target process can guarantee that the PUT is<br>
>>> visible to a load/store  without an additional memory barrier.<br>
>> The flush of the source process has to ensure that.<br>
><br>
> How?<br>
</div>See above, mfence.</blockquote></div><br><div>Even in shared memory, the mfence is useless for guaranteeing visibility to any other thread/process. For visibility on architectures that reorder loads, the P1 must issue a read memory barrier after seeing the hand wave and before reading from the window.</div>