IBM Books

MPI Programming Guide


Bindings for point-to-point communication

Table 29 lists the bindings for point-to-point communication subroutines.

Table 29. Bindings for point-to-point communication

Subroutine name:
C
C++
FORTRAN
Binding:
C
C++
FORTRAN
MPI_Bsend int MPI_Bsend(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm);
MPI::Comm::Bsend void MPI::Comm::Bsend(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_BSEND MPI_BSEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST, INTEGER TAG,INTEGER COMM,INTEGER IERROR)
MPI_Bsend_init int MPI_Bsend_init(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Bsend_init MPI::Prequest MPI::Comm::Bsend_init(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_BSEND_INIT MPI_SEND_INIT(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Buffer_attach int MPI_Buffer_attach(void* buffer,int size);
MPI::Attach_buffer void MPI::Attach_buffer(void* buffer, int size);
MPI_BUFFER_ATTACH MPI_BUFFER_ATTACH(CHOICE BUFFER,INTEGER SIZE,INTEGER IERROR)
MPI_Buffer_detach int MPI_Buffer_detach(void* buffer,int* size);
MPI::Detach_buffer int MPI::Detach_buffer(void*& buffer);
MPI_BUFFER_DETACH MPI_BUFFER_DETACH(CHOICE BUFFER,INTEGER SIZE,INTEGER IERROR)
MPI_Cancel int MPI_Cancel(MPI_Request *request);
MPI::Request::Cancel void MPI::Request::Cancel(void) const;
MPI_CANCEL MPI_CANCEL(INTEGER REQUEST,INTEGER IERROR)
MPI_Get_count int MPI_Get_count(MPI_Status *status, MPI_Datatype datatype, int *count);
MPI::Status::Get_count int MPI::Status::Get_count(const MPI::Datatype& datatype) const;
MPI_GET_COUNT MPI_GET_COUNT(INTEGER STATUS(MPI_STATUS_SIZE),,INTEGER DATATYPE,INTEGER COUNT, INTEGER IERROR)
MPI_Ibsend int MPI_Ibsend(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Ibsend MPI::Request MPI::Comm::Ibsend(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_IBSEND MPI_IBSEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Iprobe int MPI_Iprobe(int source,int tag,MPI_Comm comm,int *flag,MPI_Status *status);
MPI::Comm::Iprobe bool MPI::Comm::Iprobe(int source, int tag) const;
MPI_IPROBE MPI_IPROBE(INTEGER SOURCE,INTEGER TAG,INTEGER COMM,INTEGER FLAG,INTEGER STATUS(MPI_STATUS_SIZE),INTEGER IERROR)
MPI_Irecv int MPI_Irecv(void* buf,int count,MPI_Datatype datatype,int source,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Irecv MPI::Request MPI::Comm::Irecv(void *buf, int count, const MPI::Datatype& datatype, int source, int tag) const;
MPI_IRECV MPI_IRECV(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER SOURCE,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Irsend int MPI_Irsend(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Irsend MPI::Request MPI::Comm::Irsend(const void *buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_IRSEND MPI_IRSEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Isend int MPI_Isend(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Isend MPI::Request MPI::Comm::Isend(const void *buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_ISEND MPI_ISEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Issend int MPI_Issend(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Issend MPI::Request MPI::Comm::Issend(const void *buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_ISSEND MPI_ISSEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Probe int MPI_Probe(int source,int tag,MPI_Comm comm,MPI_Status *status);
MPI::Comm::Probe void MPI::Comm::Probe(int source, int tag) const;

void MPI::Comm::Probe(int source, int tag, MPI::Status& status) const;

MPI_PROBE MPI_PROBE(INTEGER SOURCE,INTEGER TAG,INTEGER COMM,INTEGER STATUS(MPI_STATUS_SIZE), INTEGER IERROR)
MPI_Recv int MPI_Recv(void* buf,int count,MPI_Datatype datatype,int source,int tag, MPI_Comm comm, MPI_Status *status);
MPI::Comm::Recv void MPI::Comm::Recv(void* buf, int count, const MPI::Datatype& datatype, int source, int tag) const;

void MPI::Comm::Recv(void* buf, int count, const MPI::Datatype& datatype, int source, int tag, MPI::Status& status) const;

MPI_RECV MPI_RECV(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER SOURCE, INTEGER TAG,INTEGER COMM,INTEGER STATUS(MPI_STATUS_SIZE),,INTEGER IERROR)
MPI_Recv_init int MPI_Recv_init(void* buf,int count,MPI_Datatype datatype,int source,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Recv_init MPI::Prequest MPI::Comm::Recv_init(void* buf, int count, const MPI::Datatype& datatype, int source, int tag) const;
MPI_RECV_INIT MPI_RECV_INIT(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER SOURCE,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Request_free int MPI_Request_free(MPI_Request *request);
MPI::Request::Free void MPI::Request::Free();
MPI_REQUEST_FREE MPI_REQUEST_FREE(INTEGER REQUEST,INTEGER IERROR)
MPI_Rsend int MPI_Rsend(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm);
MPI::Comm::Rsend void MPI::Comm::Rsend(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_RSEND MPI_RSEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER IERROR)
MPI_Rsend_init int MPI_Rsend_init(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Rsend_init MPI::Prequest MPI::Comm::Rsend_init(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_RSEND_INIT MPI_RSEND_INIT(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Send int MPI_Send(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm);
MPI::Comm::Send void MPI::Comm::Send(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_SEND MPI_SEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM, INTEGER IERROR)
MPI_Send_init int MPI_Send_init(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Send_init MPI::Prequest MPI::Comm::Send_init(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_SEND_INIT MPI_SEND_INIT(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,INTEGER IERROR)
MPI_Sendrecv int MPI_Sendrecv(void *sendbuf,int sendcount,MPI_Datatype sendtype,int dest,int sendtag,void *recvbuf,int recvcount, MPI_Datatype recvtype,int source,int recvtag,MPI_Comm comm,MPI_Status *status);
MPI::Comm::Sendrecv void MPI::Comm::Sendrecv(const void* sendbuf, int sendcount, const MPI::Datatype& sendtype, int dest, int sendtag, void* recvbuf, int recvcount, const MPI::Datatype& recvtype, int source, int recvtag) const;

void MPI::Comm::Sendrecv(const void* sendbuf, int sendcount, const MPI::Datatype& sendtype, int dest, int sendtag, void* recvbuf, int recvcount, const MPI::Datatype& recvtype, int source, int recvtag, MPI::Status& status) const;

MPI_SENDRECV MPI_SENDRECV(CHOICE SENDBUF,INTEGER SENDCOUNT,INTEGER SENDTYPE,INTEGER DEST,INTEGER SENDTAG,CHOICE RECVBUF,INTEGER RECVCOUNT,INTEGER RECVTYPE,INTEGER SOURCE,INTEGER RECVTAG,INTEGER COMM,INTEGER STATUS(MPI_STATUS_SIZE),INTEGER IERROR)
MPI_Sendrecv_replace int MPI_Sendrecv_replace(void* buf,int count,MPI_Datatype datatype,int dest,int sendtag,int source,int recvtag,MPI_Comm comm,MPI_Status *status);
MPI::Comm::Sendrecv_replace void MPI::Comm::Sendrecv_replace(void* buf, int count, const MPI::Datatype& datatype, int dest, int sendtag, int source, int recvtag) const;

void MPI::Comm::Sendrecv_replace(void *buf, int count, const MPI::Datatype& datatype, int dest, int sendtag, int source, int recvtag, MPI::Status& status) const;

MPI_SENDRECV_REPLACE MPI_SENDRECV_REPLACE(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER SENDTAG,INTEGER SOURCE,INTEGER RECVTAG,INTEGER COMM,INTEGER STATUS(MPI_STATUS_SIZE),INTEGER IERROR)
MPI_Ssend int MPI_Ssend(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm);
MPI::Comm::Ssend void MPI::Comm::Ssend(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_SSEND MPI_SSEND(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER IERROR)
MPI_Ssend_init int MPI_Ssend_init(void* buf,int count,MPI_Datatype datatype,int dest,int tag,MPI_Comm comm,MPI_Request *request);
MPI::Comm::Ssend_init MPI::Prequest MPI::Comm::Ssend_init(const void* buf, int count, const MPI::Datatype& datatype, int dest, int tag) const;
MPI_SSEND_INIT MPI_SSEND_INIT(CHOICE BUF,INTEGER COUNT,INTEGER DATATYPE,INTEGER DEST,INTEGER TAG,INTEGER COMM,INTEGER REQUEST,IERROR)
MPI_Start int MPI_Start(MPI_Request *request);
MPI::Prequest::Start void MPI::Prequest::Start();
MPI_START MPI_START(INTEGER REQUEST,INTEGER IERROR)
MPI_Startall int MPI_Startall(int count,MPI_Request *array_of_requests);
MPI::Prequest::Startall void MPI::Prequest::Startall(int count, MPI::Prequest array_of_requests[]);
MPI_STARTALL MPI_STARTALL(INTEGER COUNT,INTEGER ARRAY_OF_REQUESTS(*),INTEGER IERROR)
MPI_Test int MPI_Test(MPI_Request *request,int *flag,MPI_Status *status);
MPI::Request::Test bool MPI::Request::Test();
MPI_TEST MPI_TEST(INTEGER REQUEST,INTEGER FLAG,INTEGER STATUS(MPI_STATUS_SIZE), INTEGER IERROR)
MPI_Test_cancelled int MPI_Test_cancelled(MPI_Status *status,int *flag);
MPI::Status::Is_cancelled bool MPI::Status::Is_cancelled() const;
MPI_TEST_CANCELLED MPI_TEST_CANCELLED(INTEGER STATUS(MPI_STATUS_SIZE),INTEGER FLAG,INTEGER IERROR)
MPI_Testall int MPI_Testall(int count,MPI_Request *array_of_requests,int *flag,MPI_Status *array_of_statuses);
MPI::Request::Testall bool MPI::Request::Testall(int count, MPI::Request req_array[]);

bool MPI::Request::Testall(int count, MPI::Request req_array[], MPI::Status stat_array[]);

MPI_TESTALL MPI_TESTALL(INTEGER COUNT,INTEGER ARRAY_OF_REQUESTS(*),INTEGER FLAG, INTEGER ARRAY_OF_STATUSES(MPI_STATUS_SIZE,*),INTEGER IERROR)
MPI_Testany int MPI_Testany(int count, MPI_Request *array_of_requests, int *index, int *flag,MPI_Status *status);
MPI::Request::Testany bool MPI::Request::Testany(int count, MPI::Request array[], int& index);

bool MPI::Request::Testany(int count, MPI::Request array[], int& index, MPI::Status& status);

MPI_TESTANY MPI_TESTANY(INTEGER COUNT,INTEGER ARRAY_OF_REQUESTS(*),INTEGER INDEX,INTEGER FLAG,INTEGER STATUS(MPI_STATUS_SIZE), INTEGER IERROR)
MPI_Testsome int MPI_Testsome(int incount,MPI_Request *array_of_requests,int *outcount,int *array_of_indices,MPI_Status *array_of_statuses);
MPI::Request::Testsome int MPI::Request::Testsome(int incount, MPI::Request req_array[], int array_of_indices[]);

int MPI::Request::Testsome(int incount, MPI::Request req_array[], int array_of_indices[], MPI::Status stat_array[]);

MPI_TESTSOME MPI_TESTSOME(INTEGER INCOUNT,INTEGER ARRAY_OF_REQUESTS(*),INTEGER OUTCOUNT,INTEGER ARRAY_OF_INDICES(*),INTEGER ARRAY_OF_STATUSES(MPI_STATUS_SIZE),*),INTEGER IERROR)
MPI_Wait int MPI_Wait(MPI_Request *request,MPI_Status *status);
MPI::Request::Wait void MPI::Request::Wait();

void MPI::Request::Wait(MPI::Status& status);

MPI_WAIT MPI_WAIT(INTEGER REQUEST,INTEGER STATUS(MPI_STATUS_SIZE),INTEGER IERROR)
MPI_Waitall int MPI_Waitall(int count,MPI_Request *array_of_requests,MPI_Status *array_of_statuses);
MPI::Request::Waitall void MPI::Request::Waitall(int count, MPI::Request req_array[]);

void MPI::Request::Waitall(int count, MPI::Request req_array[], MPI::Status stat_array[]);

MPI_WAITALL MPI_WAITALL(INTEGER COUNT,INTEGER ARRAY_OF_ REQUESTS(*),INTEGER ARRAY_OF_STATUSES(MPI_STATUS_SIZE,*), INTEGER IERROR)
MPI_Waitany int MPI_Waitany(int count,MPI_Request *array_of_requests,int *index,MPI_Status *status);
MPI::Request::Waitany int MPI::Request::Waitany(int count, MPI::Request array[]);

int MPI::Request::Waitany(int count, MPI::Request array[], MPI::Status& status);

MPI_WAITANY MPI_WAITANY(INTEGER COUNT,INTEGER ARRAY_OF_REQUESTS(*),INTEGER INDEX, INTEGER STATUS(MPI_STATUS_SIZE),INTEGER IERROR)
MPI_Waitsome int MPI_Waitsome(int incount,MPI_Request *array_of_requests,int *outcount,int *array_of_indices,MPI_Status *array_of_statuses);
MPI::Request::Waitsome int MPI::Request::Waitsome(int incount, MPI::Request req_array[], int array_of_indices[]);

int MPI::Request::Waitsome(int incount, MPI::Request req_array[], int array_of_indices[], MPI::Status stat_array[]);

MPI_WAITSOME MPI_WAITSOME(INTEGER INCOUNT,INTEGER ARRAY_OF_REQUESTS,INTEGER OUTCOUNT,INTEGER ARRAY_OF_INDICES(*),INTEGER ARRAY_OF_STATUSES(MPI_STATUS_SIZE),*),INTEGER IERROR)


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]