Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
reduce some tests duration as comm_create takes longer now (comms)
[simgrid.git] / teshsuite / smpi / mpich3-test / comm / ctxsplit.c
index 4e73dc5..fe46d37 100644 (file)
 #include "mpitest.h"
 
 /*
- * This check is intended to fail if there is a leak of context ids.  
+ * This check is intended to fail if there is a leak of context ids.
  * Because this is trying to exhaust the number of context ids, it needs
- * to run for a longer time than many tests.  The for loop uses 100,000 
+ * to run for a longer time than many tests.  The for loop uses 100,000
  * iterations, which is adequate for MPICH (with only about 1k context ids
  * available).
  */
 
-int main(int argc, char** argv) {
+int main(int argc, char **argv)
+{
 
-   int      i=0;
-   int      randval;
-   int      rank;
-   int      errs = 0;
-   MPI_Comm newcomm;
-   double   startTime;
-   int      nLoop = 100000;
-   
-   MTest_Init(&argc,&argv);
+    int i = 0;
+    int randval;
+    int rank;
+    int errs = 0;
+    MPI_Comm newcomm;
+    double startTime;
+    int nLoop = 1000;
 
-   for (i=1; i<argc; i++) {
-       if (strcmp( argv[i], "--loopcount" ) == 0)  {
-          i++;
-          nLoop = atoi( argv[i] );
-       }
-       else {
-          fprintf( stderr, "Unrecognized argument %s\n", argv[i] );
-       }
-   }
+    MTest_Init(&argc, &argv);
 
-   MPI_Comm_rank(MPI_COMM_WORLD,&rank);
+    for (i = 1; i < argc; i++) {
+        if (strcmp(argv[i], "--loopcount") == 0) {
+            i++;
+            nLoop = atoi(argv[i]);
+        }
+        else {
+            fprintf(stderr, "Unrecognized argument %s\n", argv[i]);
+        }
+    }
 
-   startTime = MPI_Wtime();
-   for (i=0; i<nLoop; i++) {
-       
-       if ( rank == 0 && (i%100 == 0) ) {
-          double rate = MPI_Wtime() - startTime;
-          if (rate > 0) {
-              rate = i / rate;
-              MTestPrintfMsg( 10, "After %d (%f)\n", i, rate );
-          }
-          else {
-              MTestPrintfMsg( 10, "After %d\n", i );
-          }
-       }
-       
-       /* FIXME: Explain the rationale behind rand in this test */
-       randval=rand();
-       
-       if (randval%(rank+2) == 0) {
-          MPI_Comm_split(MPI_COMM_WORLD,1,rank,&newcomm);
-          MPI_Comm_free( &newcomm );
-       }
-       else {
-          MPI_Comm_split(MPI_COMM_WORLD,MPI_UNDEFINED,rank,&newcomm);
-          if (newcomm != MPI_COMM_NULL) {
-              errs++;
-              printf( "Created a non-null communicator with MPI_UNDEFINED\n" );
-          }
-       }
-       
-   }
-   
-   MTest_Finalize( errs );
-   MPI_Finalize();
-   
-   return 0;
+    MPI_Comm_rank(MPI_COMM_WORLD, &rank);
+
+    startTime = MPI_Wtime();
+    for (i = 0; i < nLoop; i++) {
+
+        if (rank == 0 && (i % 100 == 0)) {
+            double rate = MPI_Wtime() - startTime;
+            if (rate > 0) {
+                rate = i / rate;
+                MTestPrintfMsg(10, "After %d (%f)\n", i, rate);
+            }
+            else {
+                MTestPrintfMsg(10, "After %d\n", i);
+            }
+        }
+
+        /* FIXME: Explain the rationale behind rand in this test */
+        randval = rand();
+
+        if (randval % (rank + 2) == 0) {
+            MPI_Comm_split(MPI_COMM_WORLD, 1, rank, &newcomm);
+            MPI_Comm_free(&newcomm);
+        }
+        else {
+            MPI_Comm_split(MPI_COMM_WORLD, MPI_UNDEFINED, rank, &newcomm);
+            if (newcomm != MPI_COMM_NULL) {
+                errs++;
+                printf("Created a non-null communicator with MPI_UNDEFINED\n");
+            }
+        }
+
+    }
+
+    MTest_Finalize(errs);
+    MPI_Finalize();
+
+    return 0;
 }