Hi,<br><br>I found the problem.<br>It was not the firewall.<br><br>The process hangs at MPI_Finalize.<br>When i abort the process I Get correct the results.<br><br>I think the MPI_Send causes this problem.<br>I tried using non-blocking send but ran in to the same issue.<br>
I have the same issue when i try running the CPi.c example <br>on multiple hosts.<br><br>The following is the code.<br>I don't see anything wrong with it.<br>What do you think causes this issue.<br><br><u>Program</u><br>
<br>#include <<span class="il">mpi</span>.h><br>#include
<iostream><br>#include <stdio.h> /* printf and BUFSIZ
defined there */<br>#include <stdlib.h> /* exit defined there */<br><br><br>using
namespace std;<br>
<br>int _tmain(int argc, char * argv[])<br>{<br> int numtasks, rank,
dest, source, rc, tag=1; <br> char inmsg, outmsg='F';<br>
MPI_Status Stat;<br> <br> <br><br><br>
MPI_Init(&argc,&argv);<br>
MPI_Comm_size(MPI_COMM_WORLD, &numtasks);<br>
MPI_Comm_rank(MPI_COMM_WORLD, &rank);<br><br> if (rank == 0) {<br>
dest = 1;<br> printf(" Process %d: testing \n",rank);<br>
<br>
rc = MPI_Send(&outmsg, 1, MPI_CHAR, dest, tag,
MPI_COMM_WORLD);<br> printf(" Process %d: sent \n",rank);<br><br>
} <br><br> else if (rank == 1) {<br> source = 0;<br>
printf(" Process %d: testing \n",rank);<br>
rc = MPI_Recv(&inmsg, 1, MPI_CHAR, source, tag,
MPI_COMM_WORLD,&Stat);<br><br> printf("Process %d: Received %c
char(s) from task %d with tag %d \n",<br> rank, inmsg,
Stat.MPI_SOURCE, Stat.MPI_TAG);<br>
<br> <br> }<br> <br> MPI_Finalize();<br> return 0;<br>}<br><br>-Regards<br>-shridhar<br><br><br>