mpi-gather-example.c 407 B

12345678910111213141516171819
  1. #include "mpi.h"
  2. #define ROOT 0
  3. int numprocs, myid, bufsize;
  4. int *sendbuf, *recvbuf;
  5. ...
  6. MPI_Comm_size(MPI_COMM_WORLD, &numprocs);
  7. MPI_Comm_rank(MPI_COMM_WORLD, &myid);
  8. ...
  9. ... sendbuf allocieren, belegen ...
  10. ... bufsize belegen ...
  11. if (myid==ROOT) {
  12. ...
  13. recvbuf=malloc(bufsize*sizeof(int));
  14. }
  15. MPI_Gather(sendbuf, bufsize, MPI_INT, recvbuf, bufsize,
  16. MPI_INT, ROOT, MPI_COMM_WORLD);
  17. ...