4 int main( int argc, char **argv )
9 int buf[10000], buf2[10000], count, tag1, tag2;
15 MPI_Init( &argc, &argv );
16 MPI_Comm_rank( MPI_COMM_WORLD, &rank );
17 MPI_Comm_size( MPI_COMM_WORLD, &size );
20 MPI_Isend( buf, count, MPI_INT, 1, tag1, MPI_COMM_WORLD, &r1 );
21 MPI_Isend( buf2, count, MPI_INT, 1, tag2, MPI_COMM_WORLD, &r2 );
26 MPI_Irecv( buf2, count, MPI_INT, 0, tag2, MPI_COMM_WORLD, &r2 );
27 MPI_Irecv( buf, count, MPI_INT, 0, tag1, MPI_COMM_WORLD, &r1 );
29 if (s.MPI_TAG != tag2) {
30 printf( "Error in receive order\n" );
35 MPI_Barrier( MPI_COMM_WORLD );
37 printf( "Test completed\n" );