Delen via


MPI_Ibcast, functie

Uitzendt een bericht van het proces met rang "root" naar alle andere processen van de communicator op een niet-blokkerende manier.

Syntaxis

int MPIAPI MPI_Ibcast(
  _Inout_  void        *buffer,
  _In_    int          count,
  _In_    MPI_Datatype datatype,
  _In_    int          root,
  _In_    MPI_Comm     comm,
  _Out_   MPI_Request  *request
);

Parameters

  • buffer [in, uit]
    De aanwijzer naar de gegevensbuffer. Op het proces dat is opgegeven door de root parameter, bevat de buffer de gegevens die moeten worden uitgezonden. Op alle andere processen in de communicator die is opgegeven door de comm parameter, ontvangt de buffer de gegevensuitzending door het hoofdproces. buffer bestaat uit aantal opeenvolgende elementen van de MPI_Datatype aangegeven door de gegevenstype- ingang. De berichtlengte wordt opgegeven in termen van het aantal elementen, niet het aantal bytes.

  • aantal [in]
    Het aantal gegevenselementen in de buffer. Als het aantal parameter nul is, is het gegevensgedeelte van het bericht leeg.

  • gegevenstype [in]
    De MPI_Datatype ingang die het gegevenstype van elk element in buffervertegenwoordigt.

  • root [in]
    De rang van het proces binnen de MPI_Commcomm verzenden buffer.

  • comm [in]
    De MPI_Comm communicatorgreep.

  • [uit]
    MPI_Request greep die de communicatiebewerking vertegenwoordigt.

Retourwaarde

Retourneert MPI_SUCCESS op succes. Anders is de retourwaarde een foutcode.

In Fortran wordt de retourwaarde opgeslagen in de parameter IERROR.

Fortran

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

Opmerkingen

Een niet-blokkerende oproep initieert een collectieve broadcast-bewerking die moet worden voltooid in een afzonderlijke voltooiingsoproep. Zodra de bewerking is gestart, kan de bewerking onafhankelijk van elke berekening of andere communicatie bij deelnemende processen worden uitgevoerd. Op deze manier kunnen niet-blokkerende broadcastbewerkingen mogelijke synchronisatie-effecten van broadcastbewerkingen beperken door ze op de achtergrond uit te voeren.

Alle voltooiingsoproepen (bijvoorbeeld MPI_Wait) worden ondersteund voor niet-blokkerende broadcastbewerkingen.

Eisen

Product

Microsoft MPI v6

Rubriek

Mpi.h; Mpif.h

Bibliotheek

Msmpi.lib

DLL

Msmpi.dll

Zie ook

collectieve MPI-functies

MPI_Bcast

MPI_Datatype

MPI_Test

MPI_Testall

MPI_Testany

MPI_Testsome

MPI_Wait

MPI_Waitall

MPI_Waitany

MPI_Waitsome

MPI_Comm