typedef struct { int P, Q; /* global shape of grid */ int p, q; /* local position on grid */ MPI_Comm grid_comm; /* parent communicator */ MPI_Comm row_comm; /* row communicator */ MPI_Comm col_comm; /* column communicator */ } LA_Grid_2d;