Broadcast



next up previous contents
Next: Example Using MPI_BCAST Up: Collective Communications Previous: Barrier Synchronization

Broadcast

  broadcast

  MPI_BCAST(buffer, count, datatype, root, comm)
    
    INOUT       buffer         starting address of buffer
    IN          count          number of entries in buffer
    IN          datatype       data type of buffer
    IN          root           rank of broadcast
    IN          comm           communicator
 
MPI_Bcast(void* buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm )

MPI_BCAST(BUFFER, COUNT, DATATYPE, ROOT, COMM, IERROR) <type> BUFFER(*)
INTEGER COUNT, DATATYPE, ROOT, COMM, IERROR

MPI_BCAST broadcasts a message from the process with rank root to all processes of the group. The argument root must have identical values on all processes, and comm must represent the same intragroup communication domain. On return, the contents of root's communication buffer has been copied to all processes.

General, derived datatypes are allowed for datatype. The type signature of count and datatype on any process must be equal to the type signature of count and datatype at the root. This implies that the amount of data sent must be equal to the amount received, pairwise between each process and the root. MPI_BCAST and all other data-movement collective routines make this restriction. Distinct type maps between sender and receiver are still allowed.





Jack Dongarra
Fri Sep 1 06:16:55 EDT 1995