[Mpi3-rma] Updated RMA proposal
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, Torsten -- 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
participants (1)
-
Torsten Hoefler