- MPI_Scatter(sndbuf, sendcount, MPI_DOUBLE, &rcvd,recvcount,MPI_DOUBLE,root,MPI_COMM_WORLD);
-
- return(success);
+ retval =
+ MPI_Scatter(sndbuf, sendcount, MPI_DOUBLE, &rcvd, recvcount,
+ MPI_DOUBLE, root, MPI_COMM_WORLD);
+ if (retval != MPI_SUCCESS) {
+ fprintf(stderr, "(%s:%d) MPI_Scatter() returned retval=%d\n", __FILE__,
+ __LINE__, retval);
+ return 0;
+ }
+ // verification
+ if ((double) rank != rcvd) {
+ fprintf(stderr, "[%d] has %lf instead of %d\n", rank, rcvd, rank);
+ success = 0;
+ }
+ return (success);