I'm working with The Intel MPI library for compiling an executing an MPI code that uses one-sided calls. I was wondering regarding the implementation details of the Intel MPI Library. Basically, how the MPI library implements the RMA semantic when the low-level network does not support the same semantic. For example, if the network does not support the Accumulate operations (just support Get and Put operations). For MPICH, I read that the implementation uses direct RMA operations for shared memory and relies on an active message-based approach to emulate the RMA operations for other networks like InfiniBand. Does the Intel implementation inherit the same thing? Are there any good reference about the Intel MPI implementation details that I can read?