I am trying to run two external program sequentially. The program runs fine till the first external program call and dont execute the second one.
The code is as below:
#include <stdio.h>
#include "mpi.h"
int main(int argc,char **argv)
{
int *buf, i, rank, nints, len;
char hostname[256];
MPI_Init(&argc,&argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Barrier(MPI_COMM_WORLD);
gethostname(hostname,255);
printf("Hello world! I am process number: %d on host %s\n", rank, hostname);
MPI_Barrier(MPI_COMM_WORLD);
execl("/bin/date", "date", NULL);
MPI_Barrier(MPI_COMM_WORLD);
execl("/bin/ls", "ls", NULL);
MPI_Barrier(MPI_COMM_WORLD);
MPI_Finalize();
return 0;
}
The output I am getting is as below:
Hello world! I am process number: 0 on host cluster
Hello world! I am process number: 1 on host cluster
Hello world! I am process number: 2 on host compute-0-1.local
Hello world! I am process number: 4 on host compute-0-2.local
Hello world! I am process number: 3 on host compute-0-1.local
Hello world! I am process number: 5 on host compute-0-2.local
Thu Oct 11 12:18:40 IST 2007
Thu Oct 11 12:18:40 IST 2007
Thu Oct 11 12:18:40 IST 2007
Thu Oct 11 12:18:40 IST 2007
Thu Oct 11 12:18:40 IST 2007
Thu Oct 11 12:18:40 IST 2007
I am very new to MPI programing, any suggestions would be highly appreciated.
Thanking you in advance.
Regards
---------------------------------
Did you know? You can CHAT without downloading messenger. Click here
|