[Mpi3-rma] RMA Example 11.10

Marc-Andre Hermanns m.a.hermanns at grs-sim.de
Wed Jun 12 03:15:28 CDT 2013

Dear all,

I was just reading the RMA chapter to understand the semantics of the 
new calls. I came across Example 11.10 (page 459) and I think I'd need 
some clarification.

Does the local store not show in the public window because it is not 
wrapped in an access epoch?

Would it be the same in unified mode?

On a side note:
The example spans process B's access epoch over a call to MPI_Barrier.
Doesn't this bear the danger of a deadlock?

Consider a process C that has the same calling sequence as process B. If 
C get's the lock granted in MPI_Lock and process B's call to MPI_Lock 
blocks to wait for the lock to be granted, C will never release the 
lock, as it waits for process B to join the barrier. B, however, waits 
for the lock and will never enter the barrier.

I know this deadlock is somewhat 'constructed' by adding another 
process, but the problem to my mind is that the calls with similar 
dependencies are called in mixed sequence, which I would usually regard 
as bad practice. Do I miss something here?


Marc-Andre Hermanns
German Research School for
Simulation Sciences GmbH
c/o Laboratory for Parallel Programming
52062 Aachen | Germany

Tel +49 241 80 99753
Fax +49 241 80 6 99753
Web www.grs-sim.de

Members: Forschungszentrum Jülich GmbH | RWTH Aachen University
Registered in the commercial register of the local court of
Düren (Amtsgericht Düren) under registration number HRB 5268
Registered office: Jülich
Executive board: Prof. Marek Behr, Ph.D | Prof. Dr. Sebastian M. Schmidt

More information about the mpiwg-rma mailing list