[Mpi3-hybridpm] SHMEM Interface in Draft External Interfaces

Hubert Ritzdorf hritzdorf at hpce.nec.com
Fri Feb 25 03:29:43 CST 2011

I think we should extend the current view of the MPI_Shm handle.

It shouldn't represent only a single shared memory region. It should be possible to handle several shared memory regions under a single MPI_shm handle. In this case, an attach function could look like

   MPI_Comm_shm_attach (MPI_Comm comm, MPI_shm shm_in, MPI_shm shmem_out,
                        MPI_Info info)

The Communicator "comm" would be any communicator created for example by an
MPI_Comm_create_shmem () function call. "shm_in" might be any shared memory handle, located on the process call MPI_Comm_shm_attach. The function would create a new handle "shmem_out" containing the shared memory regions of all "shm_in" handles of comm. The communicator "comm" is associated to "shmem_out".

The "shm_out" handle would represent N shared memory regions. An inquiry function MPI_Comm_shmem_num_regions could return the number of shared memory regions. An inquiry function MPI_Comm_shmem_region_info() could return a triple (baseptr, size and key) of the i-th shared memory region or a subset of shared memory regions. The unique key is required to identify the shared memory regions by the MPI processes.


More information about the mpiwg-hybridpm mailing list