X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/865f97c868ce92518b1cf4f23e23bd1b16b7917c..cfc676704bebcd57e5ea98bb43154245a150948f:/examples/smpi/bcbench.c diff --git a/examples/smpi/bcbench.c b/examples/smpi/bcbench.c index 214f88b765..fb3c4042bf 100644 --- a/examples/smpi/bcbench.c +++ b/examples/smpi/bcbench.c @@ -1,7 +1,18 @@ +/* Copyright (c) 2009-2010, 2012-2014. The SimGrid Team. + * All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + #include #include #include +#ifdef _WIN32 + #define srandom srand + #define random rand +#endif + #define GETTIMEOFDAY_ERROR 1 #define N_START 1 @@ -13,12 +24,11 @@ int main(int argc, char *argv[]) { - int size, rank; - int N, I; - struct timeval *start_time, *stop_time; - double seconds; - int i, j, k; + int N; + struct timeval *start_time = NULL, *stop_time = NULL; + double seconds = 0; + int i, j; char *buffer; int check; @@ -35,7 +45,6 @@ int main(int argc, char *argv[]) } for (N = N_START; N <= N_STOP; N = N_NEXT) { - buffer = malloc(sizeof(char) * N); if (0 == rank) { @@ -53,8 +62,7 @@ int main(int argc, char *argv[]) MPI_Bcast(buffer, N, MPI_BYTE, 0, MPI_COMM_WORLD); if (0 == rank) { for (j = 1; j < size; j++) { - MPI_Recv(&check, 1, MPI_INT, MPI_ANY_SOURCE, 1, MPI_COMM_WORLD, - MPI_STATUS_IGNORE); + MPI_Recv(&check, 1, MPI_INT, MPI_ANY_SOURCE, 1, MPI_COMM_WORLD, MPI_STATUS_IGNORE); } } else { MPI_Send(&rank, 1, MPI_INT, 0, 1, MPI_COMM_WORLD); @@ -67,19 +75,16 @@ int main(int argc, char *argv[]) MPI_Abort(MPI_COMM_WORLD, GETTIMEOFDAY_ERROR); exit(EXIT_FAILURE); } - seconds = - (double) (stop_time->tv_sec - start_time->tv_sec) + - (double) (stop_time->tv_usec - start_time->tv_usec) / ONE_MILLION; + seconds = (double) (stop_time->tv_sec - start_time->tv_sec) + + (double) (stop_time->tv_usec - start_time->tv_usec) / ONE_MILLION; } free(buffer); if (0 == rank) { - printf("N: %10d, iter: %d, time: %10f s, avg rate: %12f Mbps\n", N, - ITER, seconds, + printf("N: %10d, iter: %d, time: %10f s, avg rate: %12f Mbps\n", N, ITER, seconds, ((double) N * ITER * 8) / (1024.0 * 1024.0 * seconds)); } - } if (0 == rank) {