[MPICH] Program crashes when multiple threads make MPI Calls

Rajeev Thakur thakur at mcs.anl.gov
Thu Feb 9 13:38:54 CST 2006


If MPI_Init_thread returns provided=MPI_THREAD_FUNNELED, you can't make MPI
calls from multiple threads. MPICH-1 supports only MPI_THREAD_FUNNELED. If
you need MPI_THREAD_MULITPLE, you need to use MPICH2.

Rajeev
 

> -----Original Message-----
> From: owner-mpich-discuss at mcs.anl.gov 
> [mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of Ashok Babu Amara
> Sent: Thursday, February 09, 2006 12:44 PM
> To: mpich-discuss at mcs.anl.gov
> Subject: [MPICH] Program crashes when multiple threads make MPI Calls
> 
> Hi All,
> 
> I am making MPI calls from two threads and it doesn't seem to be
> working. I have one thread constantly doing MPI_Send's and MPI_Recv's
> and another thread which is constantly doing MPI_Allreduce.
> 
> When I run the program it either hangs or prints this message :
> [0] Abort: header->id != c->next_packet_expected at line 730 in file
> mpid/vapi/viacheck.c
> 
> The version of MPICH being used is 1.2.6 and the thread level support
> is  MPI_THREAD_FUNNELED.
> 
> Can someone advise what is possibly wrong ?
> 
> I have attached the code that is being tested.
> 
> Thanks,
> - Ashok
> 




More information about the mpich-discuss mailing list