Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Sänder data från en medlem i en grupp till alla medlemmar i gruppen.
Syntax
int MPIAPI MPI_Bcast(
_Inout_ void *buffer,
_In_ int count,
_In_ MPI_Datatype datatype,
_In_ int root,
_In_ MPI_Comm comm
);
Parametrar
buffert [in, ut]
Pekaren till databufferten. På den process som anges av rotparametern innehåller bufferten de data som ska sändas. På alla andra processer i kommunikatören som anges av comm-parametern tar bufferten emot data som sänds av rotprocessen.count [in]
Antalet dataelement i bufferten. Om parametern count är noll är datadelen av meddelandet tom.datatype [in]
MPI-datatypen för elementen i sändningsbufferten.root [in]
Rangordningen för den process som skickar data.comm [in]
Den MPI_Comm kommunikationshandtaget.
Returvärde
Returnerar MPI_SUCCESS vid lyckat resultat. Annars är returvärdet en felkod.
I Fortran lagras returvärdet i parametern IERROR .
Fortran
MPI_BCAST(BUFFER, COUNT, DATATYPE, ROOT, COMM, IERROR)
<type> BUFFER(*)
INTEGER COUNT, DATATYPE, ROOT, COMM, IERROR
Kommentarer
Typsignaturen som anges av parametrarna count och datatype för varje process måste vara lika med typsignaturen i roten. Det här kravet innebär att mängden data som skickas måste vara lika med den mängd som tas emot, parvis mellan varje process och roten. MPI_Bcast och alla andra kollektiva rutiner för dataflytt gör den här begränsningen. Distinkta typmappningar mellan avsändare och mottagare tillåts fortfarande.
Om comm-parametern refererar till en intracommunicator sänder MPI_Bcast-funktionen ett meddelande från den angivna processen till alla processer i gruppen som innehåller sig själv. Den anropas av alla medlemmar i gruppen som använder samma parametrar. Vid retur kopieras innehållet i rotbufferten till alla andra processer.
Om parametern comm refererar till en intercommunicator omfattar anropet alla processer i intercommunicator, men med en grupp, grupp A, som definierar rotprocessen. Alla processer i den andra gruppen, grupp B, anger samma värde i rotparametern, d.v.s. rotprocessens rangordning i grupp A. Rotprocessen anger värdet MPI_ROOT i rotparametern. Alla andra processer i grupp A anger värdet MPI_PROC_NULL i rotparametern . Data sänds från rotprocessen till alla processer i grupp B. Buffertparametrarna för processerna i grupp B måste vara konsekventa med buffertparametern för rotprocessen.
Krav
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package eller HPC Pack 2008 Client Utilities |
Huvud |
Mpi.h; Mpif.h |
Bibliotek |
Msmpi.lib |
DLL |
Msmpi.dll |