X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/99e8fb90a14e543c1a4b2feaf22a5c0670c2951a..b24c14fba1046bbf5577d5b0ab1fe47b2af69a0d:/examples/smpi/alltoall2.c diff --git a/examples/smpi/alltoall2.c b/examples/smpi/alltoall2.c index ae47160d1e..a46f765dbb 100644 --- a/examples/smpi/alltoall2.c +++ b/examples/smpi/alltoall2.c @@ -43,26 +43,41 @@ #define MAXLEN 10000 -void main() +int main( int argc, char *argv[] ) { - int out[1000000],in[1000000],i,j,k; +#define N 1000000 + int *out, *in,i,j,k; int myself,tasks; - MPI_Init(0,0); + out = malloc(N*sizeof(int)); + in = malloc(N*sizeof(int)); + if ((out==NULL) || (in==NULL)) { + printf("Error: cannot allocate N bytes for in or out arrays\n"); + exit(1); + } + MPI_Init( &argc,&argv ); MPI_Comm_rank(MPI_COMM_WORLD,&myself); MPI_Comm_size(MPI_COMM_WORLD,&tasks); for(j=1;j<=MAXLEN;j*=10) { - for(i=0;i bad answer (%d) at index %d of %d (should be %d)\n",myself,in[k+i*j],k+i*j,j*tasks,i); + break; + } + } + } } MPI_Barrier(MPI_COMM_WORLD); if(myself==0) printf("TEST COMPLETE\n"); MPI_Finalize(); + return EXIT_SUCCESS; }