[Mpi3-hybridpm] SHMEM Interface in Draft External Interfaces
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,
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