MPI_Win_shared_query_c - Query the size and base pointer for a patch of a shared memory window
Contents
Errors
All MPI routines (except MPI_Wtime and MPI_Wtick )returnanerrorvalue; C routines as the value of the
function and Fortran routines in the last argument. Before the value is returned, the current MPI error
handler is called. By default, this error handler aborts the MPI job. The error handler may be changed
with MPI_Comm_set_errhandler (forcommunicators), MPI_File_set_errhandler (forfiles),and
MPI_Win_set_errhandler (for RMA windows). The MPI-1 routine MPI_Errhandler_set maybeusedbut its use
is deprecated. The predefined error handler MPI_ERRORS_RETURN maybeusedtocauseerrorvaluestobereturned. Note that MPI does not guarantee that an MPI program can continue past an error; however, MPI
implementations will attempt to continue whenever possible.
MPI_SUCCESS
- No error; MPI routine completed successfully.
MPI_ERR_ARG
- Invalid argument. Some argument is invalid and is not identified by a specific error class
(e.g., MPI_ERR_RANK ).MPI_ERR_RANK
- Invalid source or destination rank. Ranks must be between zero and the size of the communicator
minus one; ranks in a receive ( MPI_Recv , MPI_Irecv , MPI_Sendrecv ,etc.)mayalsobe
MPI_ANY_SOURCE .MPI_ERR_WIN
- Invalid MPI window object
MPI_ERR_OTHER
- Other error; use MPI_Error_string togetmoreinformation about this error code.
Input Parameters
win - shared memory window object (handle) (handle)
rank - rank in the group of window win or MPI_PROC_NULL (non-negative integer) (non-negative integer)
Name
MPI_Win_shared_query_c - Query the size and base pointer for a patch of a shared memory window
Notes
The returned baseptr points to the calling process addressspaceofthe shared segment belonging to the
target rank.
Notes For Fortran
All MPI routines in Fortran (except for MPI_WTIME and MPI_WTICK )have an additional argument ierr attheendoftheargumentlist. ierr isanintegerandhasthesamemeaningasthereturnvalueoftheroutine
in C. In Fortran, MPI routines are subroutines, and are invoked with the call statement.
All MPI objects (e.g., MPI_Datatype , MPI_Comm )areoftype INTEGER inFortran.Output Parameters
size - size of the window segment (non-negative integer) (non-negative integer)
disp_unit
- local unit size for displacements, in bytes (positive integer) (positive integer)
baseptr
- address for load/store access to window segment (choice) (choice)
See Also
MPI_Win_allocate_shared
1/21/2022 MPI_Win_shared_query_c(3)
Synopsis
#ifdef ENABLE_QMPI
#ifndef MPICH_MPI_FROM_PMPI
int QMPI_Win_shared_query_c(QMPI_Context context, int tool_id, MPI_Win win, int rank,
MPI_Aint *size, MPI_Aint *disp_unit, void *baseptr) MPICH_API_PUBLIC
Thread And Interrupt Safety
This routine is thread-safe. This means that this routine may be safely used by multiple threads without
the need for any user-provided thread locks. However, the routine is not interrupt safe. Typically,
this is due to the use of memory allocation routines such as malloc orothernon-MPICHruntimeroutinesthatarethemselvesnotinterrupt-safe.