Hi 

I got a problem of open MPI.

My program has 5 processes. 

All of them can run MPI_Finalize() and return 0. 

But, the whole program cannot be completed. 

In the MPI cluster job queue, it is strill in running status. 

If I use 1 process to run it, no problem.

Why ? 

My program:

int main (int argc, char **argv) 
{

MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &myRank);
MPI_Comm_size(MPI_COMM_WORLD, &mySize);
MPI_Comm world;
world = MPI_COMM_WORLD;

if (myRank == 0)
        {
do some things. 
}

if (myRank != 0)
       {
do some things. 
MPI_Finalize();
return 0 ;
}
if (myRank == 0)
        {
MPI_Finalize();
  return 0;
}
}

And, some output files get wrong codes, which can not be readible. 
In 1-process case, the program can print correct results to these output files . 

Any help is appreciated. 

thanks

Jack

Oct. 24 2010