Hi, Please check shmem.h for exposed API for hw atomics, and memory put/get operations. OMPI has plugin system, where every transport can expose what operations are supported and OMPI will pick one which does for user-called API requiring it.
For hw which does not support hw atomics or remote memory operations - OSHMEM API under OMPI package provides SW simulation layer for such transports. On Fri, Mar 4, 2016 at 12:26 AM, dpchoudh . <dpcho...@gmail.com> wrote: > Hello all > > Here is a 101 level question: > > OpenMPI supports many transports, out of the box, and can be extended to > support those which it does not. Some of these transports, such as > infiniband, provide hardware atomic operations on remote memory, whereas > others, such as iWARP, do not. > > My question is: how (and where in the code base) does openMPI use this > feature, on those hardware that support it? What is the penalty, in terms > of additional code, runtime performance and all other considerations, on a > hardware that does not support it? > > Thanks in advance. > Durga > > Life is complex. It has real and imaginary parts. > > _______________________________________________ > devel mailing list > de...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel > Link to this post: > http://www.open-mpi.org/community/lists/devel/2016/03/18670.php > -- Kind Regards, M.