fork download
  1. #include <stdio.h>
  2. #include "mpi.h"
  3. int main(int argc,char *argv[])
  4. {
  5. int iproc;
  6. int MyRank, Numprocs, Root = 0;
  7. int value, sum = 0;
  8. int Source, Source_tag;
  9. int Destination, Destination_tag;
  10. MPI_Status status;
  11. MPI_Init(&argc,&argv);
  12. MPI_Comm_size(MPI_COMM_WORLD,&Numprocs);
  13. MPI_Comm_rank(MPI_COMM_WORLD,&MyRank);
  14. if(MyRank == Root){
  15. for(iproc = 1 ; iproc < Numprocs ; iproc++){
  16. Source = iproc;
  17. Source_tag = 0;
  18. MPI_Recv(&value, 1, MPI_INT, Source, Source_tag,
  19. MPI_COMM_WORLD, &status);
  20. sum = sum + value;
  21. }
  22. printf("MyRank = %d, SUM = %d\n", MyRank, sum);
  23. }
  24. else{
  25. Destination = 0;
  26. Destination_tag = 0;
  27. MPI_Send(&MyRank, 1, MPI_INT, Destination, Destination_tag,
  28. MPI_COMM_WORLD);
  29. }
  30. MPI_Finalize();
  31. }
Success #stdin #stdout #stderr 0.28s 38868KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Error: unexpected symbol in "int main"
Execution halted