The semantics of open shmem's fetching atomics is the same as MPI_Get_accumulate. The old value is returned *not* the new value. This is not an uncommon semantic for atomic operations. So, no, I don't think oshmem will be any better than MPI RMA for this use case.
To OP. Yes, you will have to either apply the reduction locally or perform an MPI_Get if you are interested in the new value at the target process on the origin process. -Nathan On Tue, Apr 14, 2015 at 02:41:27PM -0400, Andy Riebs wrote: > Nick, > > You may have more luck looking into the OSHMEM layer of Open MPI; SHMEM is > designed for one-sided communications. > > BR, > Andy > > On 04/14/2015 02:36 PM, Nick Papior Andersen wrote: > > Dear all, > I am trying to implement some features using a one-sided communication > scheme. > The problem is that I understand the different one-sided communication > schemes as this (basic words): > MPI_Get) > fetches remote window memory to a local memory space > MPI_Get_Accumulate) > 1. fetches remote window memory to a local memory space > 2. sends a local memory space (different from that used in 1.) to the > remote window and does OP on those two quantities > MPI_Put) > sends local memory space to remote window memory > MPI_Accumulate) > sends a local memory space to the remote window and does OP on those two > quantities > (surprisingly the documentation says that this only works with windows > within the same node, note that MPI_Get_Accumulate does not say this > constraint) > ?) > Where is the function that fetches remotely and does operation in a > local memory space? > Do I really have to do MPI_Get to local memory, then do operation > manually? (no it is not difficult, but... ;) ) > I would like this to exist: > MPI_Get_Reduce(origin,...,target,...,MPI_OP,...) > When I just looked at the API names I thought Get_Accumulate did this, > but to my surprise that was not the case at all. :) > -- > Kind regards Nick > > _______________________________________________ > users mailing list > us...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users > Link to this post: > http://www.open-mpi.org/community/lists/users/2015/04/26723.php > _______________________________________________ > users mailing list > us...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users > Link to this post: > http://www.open-mpi.org/community/lists/users/2015/04/26724.php
pgpPJGrGI7SyR.pgp
Description: PGP signature