Thanks Sangmin.

I would change the strategy to terminate the accept.

 

Regards,

Hirak

 

 

Hi Hirak,

 

I checked your code. I think your code is incorrect because you are trying to establish communication within a single process. You are using two threads and two duplicated communicators, but they are associated with a single process. MPI_Comm_accept() and MPI_Comm_connect() are used to establish communication between “two sets of MPI processes” (i.e., at least two different processes are needed). Please refer to 10.4 Establishing Communication (p. 387) in MPI Standard 3.0.

 

— Sangmin

 

 

 

From: Roy, Hirak
Sent: Thursday, October 09, 2014 2:17 AM
To: discuss@mpich.org
Subject: Re: How to terminate MPI_Comm_accept

 

Hi Pavan,
 
Here is the code attached. Let me know if you think the code is incorrect.
 
I used MPI-3.0.4 with sock device.
 
Compile command : 
 
export MPI_ROOT = /home/hroy/local/mpich-3.0.4/linux_x86_64
#export MPI_ROOT = /home/hroy/local/mpich-3.0.4.nemesis/linux_x86_64
export MPI_BIN = ${MPI_ROOT}/bin
export MPI_LIB = ${MPI_ROOT}/lib
export INCLUDE_DIR = ${MPI_ROOT}/include
compile: 
        g++ -g  main.cpp  -I ${INCLUDE_DIR} ${MPI_LIB}/libmpich.a ${MPI_LIB}/libmpl.a -lpthread 
 
 
 
Thanks,
Hirak
 
Can you send us a simple program that reproduces the issue?
 
  — Pavan
 
On Oct 8, 2014, at 2:54 PM, Roy, Hirak <Hirak_Roy at mentor.com> wrote:
 
> Hi Pavan,
>  
> I even tried duping the communicator (MPI_COMM_SELF à DUP1, DUP2) before I do any kind of MPI calls. 
> Still it does not work.
>  
> Thanks,
> Hirak
>