next up previous
Next: Six Function MPI Up: Section III Previous: Simple C Example

Simple C Example (cont.)

  else if (rank == dest) {
    tag   = MPI_ANY_TAG;
    count = 100;
    from  = MPI_ANY_SOURCE;
    MPI_Recv(data, count, MPI_DOUBLE, from, tag, MPI_COMM_WORLD,
             &status);

    MPI_Get_count(&status, MPI_DOUBLE, &st_count);
    st_source= status.MPI_SOURCE;
    st_tag= status.MPI_TAG;

    printf("Status info: source = %d, tag = %d, count = %d\n",
           st_source, st_tag, st_count);
    printf(" %d received: ", rank);
    for (i = 0; i < st_count; i++)
      printf("%d ", data[i]);
    printf("\n");
  }

  MPI_Finalize();
  return 0;
}



andrew lumsdaine
Tue Jun 27 17:16:52 EST 1995