Re: [mpich-discuss] MCS lock and MPI RMA problem
On Mar 13, 2017, at 1:43 PM, Ask Jakobsen <[email protected]> wrote: I have discovered that the code from the book in mcs-lock.c deviates from "High-Performance Distributed RMA Locks" pseudo code (see Listing 3 in paper) and the original MCS paper "Algorithms for scalable Sync on shared memory multiprocessors". If I add to the original mcs-lock.c code
lmem[nextRank]=-1;
This change will be incorrect. Apart from the fact that you are modidying the window outside of the epoch (which is not allowed), it'll conflict with the MODE_NOCHECK hint. With MODE_NOCHECK, you are promising that the window buffer will not be accessed without shared-mode RMA routines (PUT/GET to different locations or atomic operations only). The reason I suggested that optimization was because all accesses to lmem were through RMA and the algorithm was already ensuring atomicity. If you change lmem through a direct store operation, that hint will no longer be valid. I think you should ignore what the paper says and reason through the algorithm yourself. That's causing more of a distraction than help at this point. -- Pavan _______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
participants (1)
-
Balaji, Pavan