The code seemed OK to me before the changes but, apparently, OpenMPI is having problems to send/receive the mesh partition sizes with non-blocking calls. I have cleaned up the code a bit and changed the calls to mpi_isend/mpi_irecv to mpi_send/mpi_recv only for the sizes.
The code has been tested with the following combinations:
The code seemed OK to me before the changes but, apparently, OpenMPI is having problems to send/receive the mesh partition sizes with non-blocking calls. I have cleaned up the code a bit and changed the calls to
mpi_isend
/mpi_irecv
tompi_send
/mpi_recv
only for the sizes.The code has been tested with the following combinations: