Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
fix the compilation of MPICH3 tests with the absolute paranoid flags (enable_maintainer)
[simgrid.git] / teshsuite / smpi / mpich3-test / pt2pt / anyall.c
index b54b13a..405c794 100644 (file)
 static char MTEST_Descrip[] = "One implementation delivered incorrect data when an MPI recieve uses both ANY_SOURCE and ANY_TAG";
 */
 
-int main( int argc, char *argv[] )
+int main(int argc, char *argv[])
 {
-    int         wrank, wsize, master, worker, i, j, idx, count;
-    int         errs = 0;
+    int wrank, wsize, master, worker, i, j, idx, count;
+    int errs = 0;
     MPI_Request r[MAX_MSGS];
-    int         buf[MAX_MSGS][MAX_MSGS];
-    MPI_Comm    comm;
-    MPI_Status  status;
+    int buf[MAX_MSGS][MAX_MSGS];
+    MPI_Comm comm;
+    MPI_Status status;
 
-    MTest_Init( &argc, &argv );
+    MTest_Init(&argc, &argv);
 
-    MPI_Comm_rank( MPI_COMM_WORLD, &wrank );
-    MPI_Comm_size( MPI_COMM_WORLD, &wsize );
+    MPI_Comm_rank(MPI_COMM_WORLD, &wrank);
+    MPI_Comm_size(MPI_COMM_WORLD, &wsize);
 
     comm = MPI_COMM_WORLD;
     master = 0;
     worker = 1;
 
-    /* The test takes advantage of the ordering rules for messages*/
+    /* The test takes advantage of the ordering rules for messages */
 
     if (wrank == master) {
-       /* Initialize the send buffer */
-       for (i=0; i<MAX_MSGS; i++) {
-           for (j=0; j<MAX_MSGS; j++) {
-               buf[i][j] = i*MAX_MSGS + j;
-           }
-       }
-       MPI_Barrier( MPI_COMM_WORLD );
-       for (i=0; i<MAX_MSGS; i++) {
-           MPI_Send( buf[i], MAX_MSGS-i, MPI_INT, worker, 3, comm );
-       }
+        /* Initialize the send buffer */
+        for (i = 0; i < MAX_MSGS; i++) {
+            for (j = 0; j < MAX_MSGS; j++) {
+                buf[i][j] = i * MAX_MSGS + j;
+            }
+        }
+        MPI_Barrier(MPI_COMM_WORLD);
+        for (i = 0; i < MAX_MSGS; i++) {
+            MPI_Send(buf[i], MAX_MSGS - i, MPI_INT, worker, 3, comm);
+        }
     }
     else if (wrank == worker) {
-       /* Initialize the recv buffer */
-       for (i=0; i<MAX_MSGS; i++) {
-           for (j=0; j<MAX_MSGS; j++) {
-               buf[i][j] = -1;
-           }
-       }
-       for (i=0; i<MAX_MSGS; i++) {
-           MPI_Irecv( buf[i], MAX_MSGS-i, MPI_INT, MPI_ANY_SOURCE, 
-                      MPI_ANY_TAG, comm, &r[i] );
-       }
-       MPI_Barrier( MPI_COMM_WORLD );
-       for (i=0; i<MAX_MSGS; i++) {
-           MPI_Waitany( MAX_MSGS, r, &idx, &status );
-           /* Message idx should have length MAX_MSGS-idx */
-           MPI_Get_count( &status, MPI_INT, &count );
-           if (count != MAX_MSGS-idx) {
-               errs++;
-           }
-           else {
-               /* Check for the correct answers */
-               for (j=0; j < MAX_MSGS-idx; j++) {
-                   if (buf[idx][j] != idx * MAX_MSGS + j) {
-                       errs ++;
-                       printf( "Message %d [%d] is %d, should be %d\n",
-                               idx, j, buf[idx][j], idx * MAX_MSGS + j );
-                   }
-               }
-           }
-       }
+        /* Initialize the recv buffer */
+        for (i = 0; i < MAX_MSGS; i++) {
+            for (j = 0; j < MAX_MSGS; j++) {
+                buf[i][j] = -1;
+            }
+        }
+        for (i = 0; i < MAX_MSGS; i++) {
+            MPI_Irecv(buf[i], MAX_MSGS - i, MPI_INT, MPI_ANY_SOURCE, MPI_ANY_TAG, comm, &r[i]);
+        }
+        MPI_Barrier(MPI_COMM_WORLD);
+        for (i = 0; i < MAX_MSGS; i++) {
+            MPI_Waitany(MAX_MSGS, r, &idx, &status);
+            /* Message idx should have length MAX_MSGS-idx */
+            MPI_Get_count(&status, MPI_INT, &count);
+            if (count != MAX_MSGS - idx) {
+                errs++;
+            }
+            else {
+                /* Check for the correct answers */
+                for (j = 0; j < MAX_MSGS - idx; j++) {
+                    if (buf[idx][j] != idx * MAX_MSGS + j) {
+                        errs++;
+                        printf("Message %d [%d] is %d, should be %d\n",
+                               idx, j, buf[idx][j], idx * MAX_MSGS + j);
+                    }
+                }
+            }
+        }
     }
     else {
-       MPI_Barrier( MPI_COMM_WORLD );
+        MPI_Barrier(MPI_COMM_WORLD);
     }
-       
-    MTest_Finalize( errs );
+
+    MTest_Finalize(errs);
     MPI_Finalize();
 
     return 0;