X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2f033b16a27b1d9dab9ae6f442cb9c89464053d2..6de9090dd8692387ae343c587b26915f9922d7bd:/examples/smpi/bcast.c diff --git a/examples/smpi/bcast.c b/examples/smpi/bcast.c index 27b58eee09..72ad419524 100644 --- a/examples/smpi/bcast.c +++ b/examples/smpi/bcast.c @@ -1,27 +1,40 @@ +/* Copyright (c) 2009. 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 -int main (int argc, char **argv) { +int main(int argc, char **argv) +{ int size, rank; int value = 3; double start_timer; + int quiet = 0; MPI_Init(&argc, &argv); MPI_Comm_size(MPI_COMM_WORLD, &size); MPI_Comm_rank(MPI_COMM_WORLD, &rank); + if (argc > 1 && !strcmp(argv[1], "-q")) + quiet = 1; + start_timer = MPI_Wtime(); if (0 == rank) { value = 17; } - printf("node %d has value %d\n", rank, value); MPI_Bcast(&value, 1, MPI_INT, 0, MPI_COMM_WORLD); - printf("node %d has value %d\n", rank, value); + if (value != 17) { + printf("node %d has value %d after broadcast\n", rank, value); + } - MPI_Barrier( MPI_COMM_WORLD ); - if ( 0 == rank) - printf("Elapsed time on rank %d: %lf s\n", rank, MPI_Wtime()-start_timer); + MPI_Barrier(MPI_COMM_WORLD); + if (0 == rank && !quiet) + printf("Elapsed time on rank %d: %lf s\n", rank, + MPI_Wtime() - start_timer); MPI_Finalize(); return 0; }