[Mpi3-rma] Updated RMA proposal

Torsten Hoefler htor at illinois.edu
Tue Mar 2 00:12:59 CST 2010

Hello all,

I still believe that small fixes to the existing RMA rather than a
complete redesign could lead to a better RMA interface for MPI. I
updated my proposal from November with all comments I received so far. 

The major changes are:

- P2P windows are gone now (the problems of establishing them seemed to
  outweigh the benefits and object-oriented codes can do their own
  memory management inside an existing window)
- the windows have been replaced by a p2p synchronization based on
  lock/unlock. I think splitting up unlock into flush (which is
  essentially a wait) and unlock (which is now only unlock) would be
  beneficial. However, this would break backwards compatibility! (needs
  further discussion)
- collective window allocation (I am getting more and more convinced
  that we should have this in the standard, just like MPI_Alloc_mem,
  just collectively and automatically registered as window). An
  alternative would be to define a collective MPI_Alloc_mem, which I
  would find confusing because all this seems to be good for would be
  memory windows.
- collective operation registration (in order to use user-defined ops in
  MPI_[Get_]Accumulate[_get] calls. This is a stub right now but would
  be similar to MPI_Op_create, just collectively). Remember, if we allow
  operations, then we enable very mighty programming techniques with
  accumulate and friends.
- MPI_RMA_query is slightly reworded

Everything is in http://www.unixer.de/sec/one-side-2.pdf (new text is
red, erased text green, and comments blue).

All the Best,

 bash$ :(){ :|:&};: --------------------- http://www.unixer.de/ -----
Torsten Hoefler         | Research Associate
Blue Waters Directorate | University of Illinois
1205 W Clark Street     | Urbana, IL, 61801
NCSA Building           | +01 (217) 244-7736

More information about the mpiwg-rma mailing list