Did you build openmpi with multithreading enabled?

If not then that could be the problem.

  Brian
On Dec 5, 2012 3:20 AM, "赵印" <yin_z...@126.com> wrote:

> Hi all,
>
> I have a MPI_Isend/MPI_Recv problem in  a multi-thread program.
>
> In the program:
> *    The first machine* has one thread does some computation and call *
> MPI_Isend *to send buffer to the second machine, and another thread is
> always trying to*MPI_Recv* data from the second machine. And the first
> thread will *MPI_Wait *its last *MPI_Isend *to complete before call *
> MPI_Isend *again.
> *    The second machine* does the exact same thing.
>
> Then I got the result that :
> *The first machine*:
>     Thread* 0* : *MPI_Isend *data to *the second machine* successfully.
> but blocked in *MPI_Wait *be! cause last *MPI_Isend *did not complete.
>     Thread* 1* : try to *MPI_Recv* data from* the second machine*, but no
> data and it blocked.
> *The second machine*:
>     Thread* 0* : *MPI_Isend *data to the first machine successfully. but
> blocked in *MPI_Wait *because last *MPI_Isend *did not complete.
>     Thread* 1* : try to *MPI_Recv* data from *the first machine*, but no
> data and it blocked.
>
> Does anyone have any ideas?   I appreciated it very much, because I have
> tracked the problem for two days but no progress.
>
> Eason Zhao
>
>
>
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>

Reply via email to