The problem is the following: I call several pairs of queries from root to slaves according to the following scheme:
MPI_isend -> MPI_irecv -> slave work -> MPI_wait_all
At the MPI_isend
stage, the MPI_isend
sends the request also to itself, but at the MPI_wait_all
stage the MPI_wait_all
hangs on waiting for the processing of this request, if the slave work
made from another thread.
Can anyone answer, is this a normal situation if the level of synchronization is set to MPI_THREAD_SERIALIZED
?