Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Update datatype mpich tests
[simgrid.git] / teshsuite / smpi / mpich3-test / datatype / transpose-pack.c
index 71c7d4c..4448138 100644 (file)
@@ -15,6 +15,7 @@
 
 static int verbose = 0;
 
+int main(int argc, char *argv[]);
 int parse_args(int argc, char **argv);
 
 int main(int argc, char *argv[])
@@ -23,80 +24,68 @@ int main(int argc, char *argv[])
     int a[100][100], b[100][100];
     MPI_Datatype row, xpose;
     MPI_Aint sizeofint;
-       
-    int /* err, */ errs = 0;
+
+    int errs = 0;
     int bufsize, position = 0;
     void *buffer;
-  
+
     int i, j;
-  
+
     /* Initialize a to some known values. */
-    for(i = 0; i < 100; i++) {
-       for(j = 0; j < 100; j++) {
-           a[i][j] = i*1000+j;
-           b[i][j] = -1;
-       }
+    for (i = 0; i < 100; i++) {
+        for (j = 0; j < 100; j++) {
+            a[i][j] = i * 1000 + j;
+            b[i][j] = -1;
+        }
     }
-  
+
     /* Initialize MPI */
     MPI_Init(&argc, &argv);
     parse_args(argc, argv);
 
     MPI_Type_extent(MPI_INT, &sizeofint);
-       
+
     /* Create datatypes. */
     MPI_Type_vector(100, 1, 100, MPI_INT, &row);
     MPI_Type_hvector(100, 1, sizeofint, row, &xpose);
     MPI_Type_commit(&xpose);
-       
+
     /* Pack it. */
     MPI_Pack_size(1, xpose, MPI_COMM_WORLD, &bufsize);
     buffer = (char *) malloc((unsigned) bufsize);
 
     /* To improve reporting of problems about operations, we
-       change the error handler to errors return */
-    MPI_Comm_set_errhandler( MPI_COMM_WORLD, MPI_ERRORS_RETURN );
-
-    /* err = */ MPI_Pack(a,
-                  1,
-                  xpose,
-                  buffer,
-                  bufsize,
-                  &position,
-                  MPI_COMM_WORLD);
-       
+     * change the error handler to errors return */
+    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
+
+    MPI_Pack(a, 1, xpose, buffer, bufsize, &position, MPI_COMM_WORLD);
+
     /* Unpack the buffer into b. */
     position = 0;
-    /* err = */ MPI_Unpack(buffer,
-                    bufsize,
-                    &position,
-                    b,
-                    100*100,
-                    MPI_INT,
-                    MPI_COMM_WORLD);
+    MPI_Unpack(buffer, bufsize, &position, b, 100 * 100, MPI_INT, MPI_COMM_WORLD);
 
     for (i = 0; i < 100; i++) {
-       for (j = 0; j < 100; j++) {
-           if(b[i][j] != a[j][i]) {
-               errs++;
-               if (verbose) fprintf(stderr, "b[%d][%d] = %d, should be %d\n",
-                                    i, j, b[i][j], a[j][i]);
-           }
-       }
+        for (j = 0; j < 100; j++) {
+            if (b[i][j] != a[j][i]) {
+                errs++;
+                if (verbose)
+                    fprintf(stderr, "b[%d][%d] = %d, should be %d\n", i, j, b[i][j], a[j][i]);
+            }
+        }
     }
 
     MPI_Type_free(&xpose);
     MPI_Type_free(&row);
-    
+
     /* print message and exit */
     if (errs) {
-       fprintf(stderr, "Found %d errors\n", errs);
+        fprintf(stderr, "Found %d errors\n", errs);
     }
     else {
-       printf(" No Errors\n");
+        printf(" No Errors\n");
     }
-    MPI_Finalize();
     free(buffer);
+    MPI_Finalize();
     return 0;
 }
 
@@ -104,18 +93,18 @@ int main(int argc, char *argv[])
 int parse_args(int argc, char **argv)
 {
     /*
-    int ret;
-
-    while ((ret = getopt(argc, argv, "v")) >= 0)
-    {
-       switch (ret) {
-           case 'v':
-               verbose = 1;
-               break;
-       }
-    }
-    */
+     * int ret;
+     *
+     * while ((ret = getopt(argc, argv, "v")) >= 0)
+     * {
+     * switch (ret) {
+     * case 'v':
+     * verbose = 1;
+     * break;
+     * }
+     * }
+     */
     if (argc > 1 && strcmp(argv[1], "-v") == 0)
-       verbose = 1;
+        verbose = 1;
     return 0;
 }