Did you build openmpi with multithreading enabled?

If not then that could be the problem.

  Brian

On Dec 5, 2012 3:20 AM, "赵印" <yin_zhao@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 toMPI_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
users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users