[MPICH] MPICH2 Thread-safety

Sylvain Jeaugey sylvain.jeaugey at bull.net
Fri Jun 9 07:03:42 CDT 2006


Hi all,

After some tries, it looks like MPICH2 is still a little far from being 
thread-safe.

Nothing seems to be currently done in this direction, so I'm posting here 
to know what I could do to improve this.

The only thread policy is "global_mutex", which -in my view- contradicts 
Section 8.7.1 of the standard :

"Example Process 0 consists of two threads. The first thread executes a 
blocking send call MPI_Send(buff1, count, type, 0, 0, comm), whereas the 
second thread executes a blocking receive call MPI_Recv(buff2, count, 
type, 0, 0, comm, &status). I.e., the first thread sends a message that is 
received by the second thread. This communication should always succeed."

There is a lot of code for "thread-safety". Still, I can't get something 
working.
Is there a chance that things will be better in 1.0.4 ? Where should I 
begin if I want to improve things (and not destroy what's already be 
done) ?

Thanks in advance,

Sylvain




More information about the mpich-discuss mailing list