**OLD** OpenSHMEM over MPI-3 **USE NEW LOCATION**
BSD-3-CLAUSE License
This project is no longer actively developed.
Bug fixes and specific feature requests will be addressed as time permits. We will try to read and comment on issues and pull requests promptly.
We recommend you use Sandia OpenSHMEM to get the latest OpenSHMEM features. We tried to support OpenSHMEM 1.2 but have no plans to support OpenSHMEM 1.3 or later.
We currently test with MPICH 3.2 on Ubuntu.
Jeff R. Hammond, Sayan Ghosh, and Barbara M. Chapman, "Implementing OpenSHMEM using MPI-3 one-sided communication." Preprint: https://github.com/jeffhammond/oshmpi/blob/master/docs/iwosh-paper.pdf Workshop Proceedings: http://www.csm.ornl.gov/workshops/openshmem2013/documents/ImplementingOpenSHMEM%20UsingMPI-3.pdf Journal: http://dx.doi.org/10.1007/978-3-319-05215-1_4
OSHMPI uses essentially all the new RMA features in MPI-3 and thus requires an MPI implementation that supports these properly. Currently, MPICH 3.0.x and its derivatives support MPI-3. We assume support for the UNIFIED memory model of MPI-3; OSHMPI will abort if this is not provided by the implementation, which should only be the case for non-cache-coherent systems.
Because SHMEM allows for communication against remote global variables and not just the symmetric heap, OSHMPI has an operating system dependency since accessing the text and data segments is not portable.
The platforms we currently test on are:
We have tested on these platforms at one point or another:
OSHMPI attempts to use MPI-3 as effectively as possible. To this end, we support all valid performance-related info keys and ensure the correct semantics when they are enabled and disabled.
When OSHMPI is used within an SMP, we employ shared-memory windows to bypass MPI in Put, Get and Atomic operations to use only load-store instructions or GCC intrinsics. However, for strided, we still use MPI within an SMP because the lead developer is a lazy bum.
We look forward to patches contributing the following:
We look forward to patches addressing the following: