NewMadeleine

Documentation

nm_mpi_req.h File Reference

declarations for MPI requests More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

Functions: Request-related functions
int MPI_Cancel (MPI_Request *request)
 Marks for cancellation a pending, nonblocking communication operation (send or receive). More...
 
int MPI_Request_free (MPI_Request *request)
 Marks the request object for deallocation and set request to MPI_REQUEST_NULL. More...
 
int MPI_Wait (MPI_Request *request, MPI_Status *status)
 Returns when the operation identified by request is complete. More...
 
int MPI_Waitall (int count, MPI_Request *array_of_requests, MPI_Status *array_of_statuses)
 Returns when all the operations identified by requests are complete. More...
 
int MPI_Waitany (int count, MPI_Request *array_of_requests, int *index, MPI_Status *status)
 Blocks until one of the operations associated with the active requests in the array has completed. More...
 
int MPI_Waitsome (int incount, MPI_Request *array_of_requests, int *outcount, int *array_of_indices, MPI_Status *array_of_statuses)
 
int MPI_Test (MPI_Request *request, int *flag, MPI_Status *status)
 Returns flag = true if the operation identified by request is complete. More...
 
int MPI_Testany (int count, MPI_Request *array_of_requests, int *index, int *flag, MPI_Status *status)
 Tests for completion of one communication operation associated with requests in the array. More...
 
int MPI_Testsome (int count, MPI_Request *array_of_requests, int *outcount, int *indices, MPI_Status *statuses)
 Tests for completion of several communication operations associated with requests in the array. More...
 
int MPI_Testall (int count, MPI_Request *array_of_requests, int *flag, MPI_Status *statuses)
 Tests for the completion of all previously initiated requests. More...
 
int MPI_Test_cancelled (const MPI_Status *status, int *flag)
 
Functions: Persistent communications
int MPI_Send_init (const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
 Creates a persistent communication request for a standard mode send operation, and binds to it all the arguments of a send operation. More...
 
int MPI_Send_init_c (const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
 
int MPI_Rsend_init (const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
 
int MPI_Rsend_init_c (const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
 
int MPI_Ssend_init (const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
 
int MPI_Ssend_init_c (const void *buf, MPI_Count count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm, MPI_Request *request)
 
int MPI_Recv_init (void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Request *request)
 Creates a persistent communication request for a receive operation. More...
 
int MPI_Recv_init_c (void *buf, MPI_Count count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Request *request)
 
int MPI_Start (MPI_Request *request)
 Initiates a persistent request. More...
 
int MPI_Startall (int count, MPI_Request *array_of_requests)
 Start all communications associated with requests in array_of_requests. More...
 
int MPI_Grequest_start (MPI_Grequest_query_function *query_fn, MPI_Grequest_free_function *free_fn, MPI_Grequest_cancel_function *cancel_fn, void *extra_state, MPI_Request *request)
 
int MPI_Grequest_complete (MPI_Request request)
 
int MPI_Status_set_elements (MPI_Status *status, MPI_Datatype datatype, int count)
 
int MPI_Status_set_elements_x (MPI_Status *status, MPI_Datatype datatype, MPI_Count count)
 
int MPI_Status_set_elements_c (MPI_Status *status, MPI_Datatype datatype, MPI_Count count)
 
int MPI_Status_set_cancelled (MPI_Status *status, int flag)
 
int MPI_Get_count (MPI_Status *status, MPI_Datatype datatype, int *count)
 Computes the number of entries received. More...
 
int MPI_Get_count_c (MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
 
int MPI_Get_elements (const MPI_Status *status, MPI_Datatype datatype, int *count)
 
int MPI_Get_elements_c (const MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
 
int MPI_Get_elements_x (const MPI_Status *status, MPI_Datatype datatype, MPI_Count *count)
 

Detailed Description

declarations for MPI requests

Definition in file nm_mpi_req.h.

Function Documentation

◆ MPI_Cancel()

int MPI_Cancel ( MPI_Request request)

Marks for cancellation a pending, nonblocking communication operation (send or receive).

Parameters
requestcommunication request handle
Returns
MPI status

◆ MPI_Get_count()

int MPI_Get_count ( MPI_Status status,
MPI_Datatype  datatype,
int *  count 
)

Computes the number of entries received.

Parameters
statusreturn status of receive operation
datatypedatatype of each receive buffer entry
countnumber of received entries
Returns
MPI status

◆ MPI_Get_count_c()

int MPI_Get_count_c ( MPI_Status status,
MPI_Datatype  datatype,
MPI_Count count 
)

◆ MPI_Get_elements()

int MPI_Get_elements ( const MPI_Status status,
MPI_Datatype  datatype,
int *  count 
)

◆ MPI_Get_elements_c()

int MPI_Get_elements_c ( const MPI_Status status,
MPI_Datatype  datatype,
MPI_Count count 
)

◆ MPI_Get_elements_x()

int MPI_Get_elements_x ( const MPI_Status status,
MPI_Datatype  datatype,
MPI_Count count 
)

◆ MPI_Grequest_complete()

int MPI_Grequest_complete ( MPI_Request  request)

◆ MPI_Grequest_start()

int MPI_Grequest_start ( MPI_Grequest_query_function query_fn,
MPI_Grequest_free_function free_fn,
MPI_Grequest_cancel_function cancel_fn,
void *  extra_state,
MPI_Request request 
)

◆ MPI_Recv_init()

int MPI_Recv_init ( void *  buf,
int  count,
MPI_Datatype  datatype,
int  source,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

Creates a persistent communication request for a receive operation.

Parameters
bufinitial address of receive buffer
countnumber of elements received
datatypetype of each element
sourcerank of source or MPI_ANY_SOURCE
tagmessage tag or MPI_ANY_TAG
commcommunicator
requestcommunication request handle
Returns
MPI status

◆ MPI_Recv_init_c()

int MPI_Recv_init_c ( void *  buf,
MPI_Count  count,
MPI_Datatype  datatype,
int  source,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

◆ MPI_Request_free()

int MPI_Request_free ( MPI_Request request)

Marks the request object for deallocation and set request to MPI_REQUEST_NULL.

An ongoing communication that is associated with the request will be allowed to complete. The request will be deallocated only after its completion.

Parameters
requestcommunication request handle
Returns
MPI status

◆ MPI_Rsend_init()

int MPI_Rsend_init ( const void *  buf,
int  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

◆ MPI_Rsend_init_c()

int MPI_Rsend_init_c ( const void *  buf,
MPI_Count  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

◆ MPI_Send_init()

int MPI_Send_init ( const void *  buf,
int  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

Creates a persistent communication request for a standard mode send operation, and binds to it all the arguments of a send operation.

Parameters
bufinitial address of send buffer
countnumber of elements sent
datatypetype of each element
destrank of destination
tagmessage tag
commcommunicator
requestcommunication request handle
Returns
MPI status

◆ MPI_Send_init_c()

int MPI_Send_init_c ( const void *  buf,
MPI_Count  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

◆ MPI_Ssend_init()

int MPI_Ssend_init ( const void *  buf,
int  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

◆ MPI_Ssend_init_c()

int MPI_Ssend_init_c ( const void *  buf,
MPI_Count  count,
MPI_Datatype  datatype,
int  dest,
int  tag,
MPI_Comm  comm,
MPI_Request request 
)

◆ MPI_Start()

int MPI_Start ( MPI_Request request)

Initiates a persistent request.

The associated request should be inactive. The request becomes active once the call is made. If the request is for a send with ready mode, then a matching receive should be posted before the call is made. The communication buffer should not be accessed after the call, and until the operation completes.

Parameters
requestcommunication request handle
Returns
MPI status

◆ MPI_Startall()

int MPI_Startall ( int  count,
MPI_Request array_of_requests 
)

Start all communications associated with requests in array_of_requests.

Parameters
countlist length
array_of_requestsarray of requests
Returns
MPI status

◆ MPI_Status_set_cancelled()

int MPI_Status_set_cancelled ( MPI_Status status,
int  flag 
)

◆ MPI_Status_set_elements()

int MPI_Status_set_elements ( MPI_Status status,
MPI_Datatype  datatype,
int  count 
)

◆ MPI_Status_set_elements_c()

int MPI_Status_set_elements_c ( MPI_Status status,
MPI_Datatype  datatype,
MPI_Count  count 
)

◆ MPI_Status_set_elements_x()

int MPI_Status_set_elements_x ( MPI_Status status,
MPI_Datatype  datatype,
MPI_Count  count 
)

◆ MPI_Test()

int MPI_Test ( MPI_Request request,
int *  flag,
MPI_Status status 
)

Returns flag = true if the operation identified by request is complete.

Parameters
requestcommunication request handle
flagtrue if operation completed
statusstatus object
Returns
MPI status

◆ MPI_Test_cancelled()

int MPI_Test_cancelled ( const MPI_Status status,
int *  flag 
)

◆ MPI_Testall()

int MPI_Testall ( int  count,
MPI_Request array_of_requests,
int *  flag,
MPI_Status statuses 
)

Tests for the completion of all previously initiated requests.

Parameters
countlist length
array_of_requestsarray of request handles
flagTrue if all requests have completed; false otherwise (logical)
statusesarray of statuses of the completed operations
Returns
MPI status

◆ MPI_Testany()

int MPI_Testany ( int  count,
MPI_Request array_of_requests,
int *  index,
int *  flag,
MPI_Status status 
)

Tests for completion of one communication operation associated with requests in the array.

Parameters
countlist length
array_of_requestsarray of request handles
indexindex of request handle that completed
flagtrue if one has completed
statusstatus object
Returns
MPI status

◆ MPI_Testsome()

int MPI_Testsome ( int  count,
MPI_Request array_of_requests,
int *  outcount,
int *  indices,
MPI_Status statuses 
)

Tests for completion of several communication operations associated with requests in the array.

Parameters
countlist length
array_of_requestsarray of request handles
outcountis the number of request handle completed
indicesare the indices or request handle completed in array_of_requests
statusesarray of statuses of the completed operations
Returns
MPI status

◆ MPI_Wait()

int MPI_Wait ( MPI_Request request,
MPI_Status status 
)

Returns when the operation identified by request is complete.

Parameters
requestrequest
statusstatus object
Returns
MPI status

◆ MPI_Waitall()

int MPI_Waitall ( int  count,
MPI_Request array_of_requests,
MPI_Status array_of_statuses 
)

Returns when all the operations identified by requests are complete.

Parameters
countlists length
array_of_requestsarray of requests
array_of_statusesarray of status objects
Returns
MPI status

◆ MPI_Waitany()

int MPI_Waitany ( int  count,
MPI_Request array_of_requests,
int *  index,
MPI_Status status 
)

Blocks until one of the operations associated with the active requests in the array has completed.

If more then one operation is enabled and can terminate, one is arbitrarily chosen. Returns in index the index of that request in the array and returns in status the status of the completing communication. If the request was allocated by a nonblocking communication operation, then it is deallocated and the request handle is set to MPI_REQUEST_NULL.

Parameters
countlist length
array_of_requestsarray of requests
indexindex of handle for operation that completed
statusstatus object
Returns
MPI status

◆ MPI_Waitsome()

int MPI_Waitsome ( int  incount,
MPI_Request array_of_requests,
int *  outcount,
int *  array_of_indices,
MPI_Status array_of_statuses 
)