#include #include #include using namespace std; int main(int argc, char * argv[]) { MPI_Init(&argc, &argv); // Get the rank and size in the original communicator int rank, size; MPI_Comm_rank(MPI_COMM_WORLD, &rank); MPI_Comm_size(MPI_COMM_WORLD, &size); vector gatherLoc(size); int sum{0}; MPI_Reduce(&rank, &sum, 1, MPI_INT, MPI_SUM, 0, MPI_COMM_WORLD); if(rank == 0) { cout << "The sum is " << sum << endl; cout << endl << endl; } sum =0; MPI_Allreduce(&rank, &sum, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD); cout << "on " << rank << " the sum is " << sum << endl; MPI_Finalize(); return 0; }