00001 #ifndef MPIB_BASIC_COLLECTIVES_H_
00002 #define MPIB_BASIC_COLLECTIVES_H_
00003
00004 #include <mpi.h>
00005
00011 #ifdef __cplusplus
00012 extern "C" {
00013 #endif
00014
00016 int MPIB_Scatter_flat(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00017 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00018 int root, MPI_Comm comm);
00019
00021 int MPIB_Scatter_flat_nb(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00022 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00023 int root, MPI_Comm comm);
00024
00026 int MPIB_Gather_flat_nb(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00027 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00028 int root, MPI_Comm comm);
00029
00031 int MPIB_Scatter_flat_rsend(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00032 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00033 int root, MPI_Comm comm);
00034
00036 int MPIB_Gather_flat_rsend(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00037 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00038 int root, MPI_Comm comm);
00039
00041 int MPIB_Gatherv_flat_sync(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00042 void* recvbuf, int* recvcounts, int* displs, MPI_Datatype recvtype,
00043 int root, MPI_Comm comm);
00044
00046 int MPIB_Scatterv_flat(void* sendbuf, int* sendcounts, int* displs, MPI_Datatype sendtype,
00047 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00048 int root, MPI_Comm comm);
00049
00051 int MPIB_Gatherv_flat(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00052 void* recvbuf, int* recvcounts, int* displs, MPI_Datatype recvtype,
00053 int root, MPI_Comm comm);
00054
00056 int MPIB_Gatherv_flat_nb(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00057 void* recvbuf, int* recvcounts, int* displs, MPI_Datatype recvtype,
00058 int root, MPI_Comm comm);
00059
00061 int MPIB_Scatterv_sorted_flat_asc(void* sendbuf, int* sendcounts, int* displs, MPI_Datatype sendtype,
00062 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00063 int root, MPI_Comm comm);
00064
00066 int MPIB_Gatherv_sorted_flat_asc(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00067 void* recvbuf, int* recvcounts, int* displs, MPI_Datatype recvtype,
00068 int root, MPI_Comm comm);
00069
00071 int MPIB_Scatterv_sorted_flat_dsc(void* sendbuf, int* sendcounts, int* displs, MPI_Datatype sendtype,
00072 void* recvbuf, int recvcount, MPI_Datatype recvtype,
00073 int root, MPI_Comm comm);
00074
00076 int MPIB_Gatherv_sorted_flat_dsc(void* sendbuf, int sendcount, MPI_Datatype sendtype,
00077 void* recvbuf, int* recvcounts, int* displs, MPI_Datatype recvtype,
00078 int root, MPI_Comm comm);
00079
00080 #ifdef __cplusplus
00081 }
00082 #endif
00083
00085 #endif