[mpich-discuss] MPI_WIN_LOCK and MPI_MODE_NOCHECK assert
Dave Goodell
goodell at mcs.anl.gov
Sat Feb 23 10:48:00 CST 2013
Nightly tarballs are available here: http://www.mpich.org/static/tarballs/nightly/master/
In particular, this tarball should contain the change that Jim mentioned: http://www.mpich.org/static/tarballs/nightly/master/mpich-master-v3.0.2-54-g882c80f.tar.gz
-Dave
On Feb 22, 2013, at 4:39 PM CST, Jim Dinan wrote:
> Hi Jaric,
>
> I pushed out the MODE_NOCHECK changes as a part of 9e68dcf86. Feel free to try them out.
>
> Best,
> ~Jim.
>
> On 2/21/13 9:20 AM, Jim Dinan wrote:
>> Hi Jaric,
>>
>> In current and previous releases of MPICH, MPI_MODE_NOCHECK was only
>> used to optimize active target communication. As part of the MPI-3
>> work, we've also added a MPI_MODE_NOCHECK optimization to passive target
>> communication. This feature should hopefully make it out to our git
>> repo this week and be included in the in the next release.
>>
>> MPI_MODE_NOCHECK essentially asserts that the epoch can begin
>> immediately at the target. If you are using exclusive locks, this means
>> that the lock is uncontended. If you are using shared locks, this means
>> that the lock is uncontended, or that all other processes are also using
>> shared lock.
>>
>> In terms of the implementation for passive target, MODE_NOCHECK allows
>> us to piggyback the lock request on the first RMA operation, since the
>> user has asserted that the lock request will succeed immediately.
>>
>> Best,
>> ~Jim.
>>
>> On 2/20/13 9:11 PM, Jaroslaw Zola wrote:
>>> I have a question regarding implementation of the MPI_MODE_NOCHECK
>>> assertion
>>> for MPI_WIN_LOCK. Is current mpich implementation taking advantage of
>>> this
>>> hint? Also, according to the standard:
>>>
>>> MPI_MODE_NOCHECK - no other process holds, or will attempt to acquire,
>>> a conflicting lock, while the caller holds the window lock. This is
>>> useful when
>>> mutual exclusion is achieved by other means, but the coherence
>>> operations that
>>> may be attached to the lock and unlock calls are still required.
>>>
>>> Are two concurrent locks from two different MPI processes followed by
>>> MPI_GET
>>> (i.e. given window is not modified but read only) considered conflicting?
>>>
>>> Thanks!
>>>
>>> - Jaric
>>>
>>>
>>>
>>> _______________________________________________
>>> discuss mailing list discuss at mpich.org
>>> To manage subscription options or unsubscribe:
>>> https://lists.mpich.org/mailman/listinfo/discuss
>>>
>> _______________________________________________
>> discuss mailing list discuss at mpich.org
>> To manage subscription options or unsubscribe:
>> https://lists.mpich.org/mailman/listinfo/discuss
> _______________________________________________
> discuss mailing list discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss
More information about the discuss
mailing list