For more information I copied some part of my code below:
double x_in[1024];/* buffer for random numbers */
int main(int argc,char** argv)
{
.....
MPI_Init(&argc,&argv);
MPI_Comm_size(MPI_COMM_WORLD,&numtasks);
MPI_Comm_rank(MPI_COMM_WORLD,&rank);
if (rank == 0 && numtasks != 5) {
printf("Number of tasks = %d\n",numtasks);
printf("Only need 5 tasks - extra will be ignored...\n");
}
MPI_Barrier(MPI_COMM_WORLD);
/******** Thread 0 ************************************/
if (rank == 0) {
printf("task %d has started...\n", rank);
dest = 1;
/* send message to worker - message tag set to 1. */
/* If return code indicates error quit */
rc = MPI_Send(x_in, 1, MPI_DOUBLE, dest, tag, MPI_COMM_WORLD);
if (rc != MPI_SUCCESS) {
printf("Send error in task 0!\n");
MPI_Abort(MPI_COMM_WORLD, rc);
exit(1);}
}
.
.
.
.
.
I am waiting for your advice.
Thanks,
Zahra