|
Because of restrictions of the Cell Broadband Engine non-blocking communication can only be provided with a lot of limitations. In fact the only operation where non-blocking communication make sense is synchronous send.
MOC_ISend uses blocking buffered send or non-blocking synchronous send according to the message size.
Data Structures | |
| struct | moc_request_struct |
| Communication-Request (Handle). More... | |
Typedefs | |
| typedef struct moc_request_struct | MOC_Request |
| Communication-Request (Handle). | |
Functions | |
| int | MOC_ISend (void *buf, int count, MOC_Datatype datatype, int dest, int tag, MOC_Comm comm, MOC_Request *request) |
| Performs a non-blocking standard mode send operation. | |
| int | MOC_ISsend (void *buf, int count, MOC_Datatype datatype, int dest, int tag, MOC_Comm comm, MOC_Request *request) |
| Performs a non-blocking synchronous mode send operation. | |
| int | MOC_Test (MOC_Request *request, int *flag, MOC_Status *status) |
| Tests, if a non-blocking communication has been completed. | |
| int | MOC_Wait (MOC_Request *request, MOC_Status *status) |
| Wait till a non-blocking communication has been completed. | |
| typedef struct moc_request_struct MOC_Request |
Communication-Request (Handle).
< Communication-Request (Handle)
| int MOC_ISend | ( | void * | buf, | |
| int | count, | |||
| MOC_Datatype | datatype, | |||
| int | dest, | |||
| int | tag, | |||
| MOC_Comm | comm, | |||
| MOC_Request * | request | |||
| ) |
Performs a non-blocking standard mode send operation.
| buf | in Pointer to buffer where data is stored | |
| count | in Number of elements to be send (not equal to actual byte-value) | |
| datatype | in Type of elements to be send | |
| dest | in Rank of receiving process | |
| tag | in Tag of message | |
| comm | in communicator of message | |
| request | out communication request (handle) |
| MOC_SUCCESS | No error; MPI routine completed successfully. | |
| ... | error-code |
| int MOC_ISsend | ( | void * | buf, | |
| int | count, | |||
| MOC_Datatype | datatype, | |||
| int | dest, | |||
| int | tag, | |||
| MOC_Comm | comm, | |||
| MOC_Request * | request | |||
| ) |
Performs a non-blocking synchronous mode send operation.
| buf | in Pointer to buffer where data is stored | |
| count | in Number of elements to be send (not equal to actual byte-value) | |
| datatype | in Type of elements to be send | |
| dest | in Rank of receiving process | |
| tag | in Tag of message | |
| comm | in communicator of message | |
| request | out communication request (handle) |
| MOC_SUCCESS | No error; MPI routine completed successfully. | |
| ... | error-code |
| int MOC_Test | ( | MOC_Request * | request, | |
| int * | flag, | |||
| MOC_Status * | status | |||
| ) |
Tests, if a non-blocking communication has been completed.
| request | in Communication-Request (Handle) | |
| flag | out true, if communication-request has been completed | |
| status | out Object holding status-information |
| MOC_SUCCESS | No error; MPI routine completed successfully. | |
| ... | error-code |
| int MOC_Wait | ( | MOC_Request * | request, | |
| MOC_Status * | status | |||
| ) |
Wait till a non-blocking communication has been completed.
| request | in Communication-Request (Handle) | |
| status | out Object holding status-information |
| MOC_SUCCESS | No error; MPI routine completed successfully. | |
| ... | error-code |
1.5.6