#include "mpi.h" #include int main(int argc, char *argv[]) { int myid, numprocs, left, right; int buffer[10], buffer2[10]; MPI_Request request, request2; MPI_Status status; MPI_Init(&argc,&argv); MPI_Comm_size(MPI_COMM_WORLD, &numprocs); MPI_Comm_rank(MPI_COMM_WORLD, &myid); right = (myid + 1) % numprocs; left = myid - 1; if (left < 0) left = numprocs - 1; int tag=123454321; MPI_Irecv(buffer, 10, MPI_INT, left, tag, MPI_COMM_WORLD, &request); MPI_Isend(buffer2, 10, MPI_INT, right, tag, MPI_COMM_WORLD, &request2); MPI_Wait(&request, &status); MPI_Wait(&request2, &status); MPI_Finalize(); return 0; }