<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">hello,<div><br></div><div>thx for answer yesterday.</div><div>I tested my code in one machine (with"mpiexec -n 2 ./myprog"),everything work fine - my program can use MPI_Send,MPI_Recv without any problems.</div><div><br></div><div>today, I setup mpich2 on two machines. Both machines can communicate with others, ssh are tested on both machines, mpd work, mpdringtest work.</div><div><br></div><div>however,when i run my program that use MPI_Send and MPI_Recv, MPI_Recv is blocked forever.</div><div>so i write new simple code to test MPI_Send,MPI_Recv like this</div><div><br></div><div> int myrank;</div><div><div> MPI_Status status;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>MPI_Init( &argc, &argv );</div><div><span class="Apple-tab-span"
style="white-space:pre">        </span>MPI_Comm_rank( MPI_COMM_WORLD, &myrank );</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>if (myrank == 0) </div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>int senddata = 1;</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>MPI_Send(&senddata, 1, MPI_INT, 1, 0, MPI_COMM_WORLD);</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>else if (myrank == 1) </div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>int recvdata = 0;</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>MPI_Recv(&recvdata, 1, MPI_INT, 0, 0, MPI_COMM_WORLD, &status);</div><div><span
class="Apple-tab-span" style="white-space:pre">                </span>printf("received :%d:\n", recvdata);</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>MPI_Finalize();</div><div><br></div><div><br></div><div>i got this error</div><div><br></div><div><br></div><div><div>Assertion failed in file ch3_progress.c at line 489: pkt->type >= 0 && pkt->type < MPIDI_NEM_PKT_END</div><div>internal ABORT - process 1</div><div>Fatal error in MPI_Finalize: Other MPI error, error stack:</div><div>MPI_Finalize(315)..................: MPI_Finalize failed</div><div>MPI_Finalize(207)..................: </div><div>MPID_Finalize(92)..................: </div><div>PMPI_Barrier(476)..................: MPI_Barrier(comm=0x44000002)
failed</div><div>MPIR_Barrier(82)...................: </div><div>MPIC_Sendrecv(164).................: </div><div>MPIC_Wait(405).....................: </div><div>MPIDI_CH3I_Progress(150)...........: </div><div>MPID_nem_mpich2_blocking_recv(1074): </div><div>MPID_nem_tcp_connpoll(1667)........: </div><div>state_commrdy_handler(1517)........: </div><div>MPID_nem_tcp_recv_handler(1413)....: socket closed</div><div><br></div><div>////////////////////////////////////////////////////////////////</div><div><br></div><div>I also tried example/cpi that come with install package -> result is the example program freezed, without any errors.(I assume it stopped at MPI_Bcast())</div><div><br></div><div>Can anyone help me with this?</div><div>This code and my program can run smoothly when I use 1 machine (with option , -n 2, -n 4 .... etc) but whenever I start mpdboot with 2 machines, mpi processes can't communicate with
other mpi processes via MPI_Send,MPI_Recv.</div><div><br></div><div>thx,</div><div>gra</div></div><div><br></div></div><div><br></div></td></tr></table><br>