Allreduce
MPI_Allreduce(void *operand, void *result, int ct, MPI_Datatype dt, MPI_Op op, MPI_Comm comm);
float local_x[] /* in */,
float local_y[] /* in */,
float Serial_dot(float x[], float y[], int m);
local_dot = Serial_dot(local_x, local_y, n_bar);
MPI_Allreduce(&local_dot, &dot, 1, MPI_FLOAT,
MPI_SUM, MPI_COMM_WORLD);