{
-
char message[20];
-
int i, rank, size, tag=137; # Any value of type allowed
-
MPI_Status status;
-
MPI_Init (&argc, &argv);
-
MPI_Comm_size(MPI_COMM_WORLD, &size); # Number of Processors
-
MPI_Comm_rank(MPI_COMM_WORLD, &rank); # Who is this processor
-
if( rank == 0 ) { # We are on "root" -- Processor 0
-
strcpy(message,"Hello MPI World"); # Generate message
-
for(i=1; i<size; i++) # Send message to size-1 other processors
-
MPI_Send(message, strlen(message)+1, MPI_CHAR, i, tag, MPI_COMM_WORLD);
-
}
-
else
-
MPI_Recv(message,20, MPI_CHAR, 0, tag, MPI_COMM_WORLD, &status);
-
printf("This is a message from node %d saying %s\n", rank, message);
-
MPI_Finalize();
|