Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
increasing the message size for testing
[simgrid.git] / examples / smpi / smpi_traced.c
index 3fa968f..a754e3b 100644 (file)
@@ -7,6 +7,8 @@
 #include "mpi.h"
 #include <stdio.h>
 
+#define DATATOSENT 100000000
+
 int main(int argc, char *argv[])
 {
   int rank, numprocs, i;
@@ -50,21 +52,21 @@ int main(int argc, char *argv[])
     MPI_Status status;
     MPI_Request req[2*N];
     MPI_Status sta[2*N];
-    int r;
+    int *r = (int*)malloc(sizeof(int)*DATATOSENT);
     if (A){
-      MPI_Isend(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD, &request);
+      MPI_Isend(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD, &request);
       MPI_Wait (&request, &status);
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (B){
-      MPI_Send(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD);
+      MPI_Send(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD);
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (C){
       for (i = 0; i < N; i++){
-        MPI_Isend(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Isend(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
       }
       for (i = 0; i < N; i++){
         MPI_Wait (&req[i], &sta[i]);
@@ -74,7 +76,7 @@ int main(int argc, char *argv[])
 
     if (D){
       for (i = 0; i < N; i++){
-        MPI_Isend(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Isend(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
       }
       for (i = 0; i < N; i++){
         int completed;
@@ -85,21 +87,21 @@ int main(int argc, char *argv[])
 
     if (E){
       for (i = 0; i < N; i++){
-        MPI_Send(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD);
+        MPI_Send(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD);
       }
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (F){
       for (i = 0; i < N; i++){
-        MPI_Send(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD);
+        MPI_Send(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD);
       }
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (G){
       for (i = 0; i < N; i++){
-        MPI_Isend(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Isend(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
       }
       MPI_Waitall (N, req, sta);
     }
@@ -107,7 +109,7 @@ int main(int argc, char *argv[])
 
     if (H){
       for (i = 0; i < N; i++){
-        MPI_Send(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD);
+        MPI_Send(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD);
       }
     }
     MPI_Barrier (MPI_COMM_WORLD);
@@ -115,17 +117,17 @@ int main(int argc, char *argv[])
     if (I){
       for (i = 0; i < 2*N; i++){
         if (i < N){
-          MPI_Send(&rank, 1, MPI_INT, 2, tag, MPI_COMM_WORLD);
+          MPI_Send(r, DATATOSENT, MPI_INT, 2, tag, MPI_COMM_WORLD);
         }else{
-          MPI_Send(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD);
+          MPI_Send(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD);
         }
       }
       MPI_Barrier (MPI_COMM_WORLD);
       for (i = 0; i < 2*N; i++){
         if (i < N){
-          MPI_Irecv(&r, 1, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
+          MPI_Irecv(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
         }else{
-          MPI_Irecv(&r, 1, MPI_INT, 2, tag, MPI_COMM_WORLD, &req[i]);
+          MPI_Irecv(r, DATATOSENT, MPI_INT, 2, tag, MPI_COMM_WORLD, &req[i]);
         }
       }
       MPI_Waitall (2*N, req, sta);
@@ -134,7 +136,7 @@ int main(int argc, char *argv[])
 
     if (J){
       for (i = 0; i < N; i++){
-        MPI_Isend(&rank, 1, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Isend(r, DATATOSENT, MPI_INT, 1, tag, MPI_COMM_WORLD, &req[i]);
       }
       for (i = 0; i < N; i++){
         int flag;
@@ -153,36 +155,36 @@ int main(int argc, char *argv[])
     MPI_Status status;
     MPI_Request req[N];
     MPI_Status sta[N];
-    int r;
+    int *r = (int*)malloc(sizeof(int)*DATATOSENT);
 
     if (A){
-      MPI_Recv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &status);
+      MPI_Recv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &status);
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (B){
-      MPI_Irecv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &request);
+      MPI_Irecv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &request);
       MPI_Wait (&request, &status);
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (C){
       for (i = 0; i < N; i++){
-        MPI_Recv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &sta[i]);
+        MPI_Recv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &sta[i]);
       }
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (D){
       for (i = 0; i < N; i++){
-        MPI_Recv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &sta[i]);
+        MPI_Recv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &sta[i]);
       }
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (E){
       for (i = 0; i < N; i++){
-        MPI_Irecv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Irecv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
       }
       for (i = 0; i < N; i++){
         MPI_Wait (&req[i], &sta[i]);
@@ -192,7 +194,7 @@ int main(int argc, char *argv[])
 
     if (F){
       for (i = 0; i < N; i++){
-        MPI_Irecv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Irecv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
       }
       for (i = 0; i < N; i++){
         int completed;
@@ -203,14 +205,14 @@ int main(int argc, char *argv[])
 
     if (G){
       for (i = 0; i < N; i++){
-        MPI_Recv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &sta[i]);
+        MPI_Recv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &sta[i]);
       }
     }
     MPI_Barrier (MPI_COMM_WORLD);
 
     if (H){
       for (i = 0; i < N; i++){
-        MPI_Irecv(&rank, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Irecv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
       }
       MPI_Waitall (N, req, sta);
     }
@@ -218,13 +220,13 @@ int main(int argc, char *argv[])
 
     if (I){
       for (i = 0; i < N; i++){
-        MPI_Irecv(&rank, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Irecv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
       }
       MPI_Waitall (N, req, sta);
 
       MPI_Barrier (MPI_COMM_WORLD);
       for (i = 0; i < N; i++){
-        MPI_Isend(&rank, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Isend(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
       }
       MPI_Waitall (N, req, sta);
 //      for (i = 0; i < N; i++){
@@ -235,7 +237,7 @@ int main(int argc, char *argv[])
 
     if (J){
       for (i = 0; i < N; i++){
-        MPI_Irecv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Irecv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
       }
       for (i = 0; i < N; i++){
         int flag;
@@ -254,7 +256,7 @@ int main(int argc, char *argv[])
 //    MPI_Status status;
     MPI_Request req[N];
     MPI_Status sta[N];
-    int r;
+    int *r = (int*)malloc(sizeof(int)*DATATOSENT);
 
     if (A) {} 
     MPI_Barrier (MPI_COMM_WORLD);
@@ -274,7 +276,7 @@ int main(int argc, char *argv[])
     MPI_Barrier (MPI_COMM_WORLD);
     if (I){
       for (i = 0; i < N; i++){
-        MPI_Irecv(&r, 1, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
+        MPI_Irecv(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD, &req[i]);
       }
       for (i = 0; i < N; i++){
         int completed;
@@ -283,7 +285,7 @@ int main(int argc, char *argv[])
       MPI_Barrier (MPI_COMM_WORLD);
 
       for (i = 0; i < N; i++){
-        MPI_Send(&rank, 1, MPI_INT, 0, tag, MPI_COMM_WORLD);
+        MPI_Send(r, DATATOSENT, MPI_INT, 0, tag, MPI_COMM_WORLD);
       }
     }
     MPI_Barrier (MPI_COMM_WORLD);