Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Verzamelt gegevens van alle leden van een groep tot één lid op een niet-blokkerende manier.
Syntaxis
int WINAPI MPI_Igather(
  _In_      void         *sendbuf,
            int          sendcount,
            MPI_Datatype sendtype,
  _Out_opt_ void         *recvbuf,
  _In_      int          recvcount,
  _In_      MPI_Datatype recvtype,
  _In_      int          root,
  _In_      MPI_Comm     comm,
  _Out_     MPI_Request  *request
);
Parameters
sendbuf [in]
De aanwijzer naar een buffer met de gegevens die naar de hoofdmap moeten worden verzonden. De buffer bestaat uit zendaantal opeenvolgende elementen van de MPI_Datatype aangegeven door de sendtype-ingang . De berichtlengte wordt opgegeven in termen van het aantal elementen, niet in het aantal bytes.sendcount
Het aantal sendtype-elementen in sendbuf. Als de waarde nul is, is het gegevensgedeelte van het bericht leeg.sendtype
De MPI_Datatype ingang die het gegevenstype van elk element in sendbuf vertegenwoordigt.recvbuf [uit, optioneel]
De aanwijzer naar een buffer met de gegevens die zijn ontvangen van elk proces in de hoofdmap, inclusief gegevens die door het hoofdproces worden verzonden (alleen significant in de hoofdmap). De ontvangstbuffer recvbuf wordt genegeerd voor alle niet-hoofdprocessen. In het basisproces bestaat recvbufuit opeenvolgende elementen van de MPI_Datatype aangegeven door de recvtype-ingang . De berichtlengte wordt opgegeven in termen van het aantal elementen, niet in het aantal bytes.aantal [ in]
Het aantal recvtype-elementen in recvbuf. Als de waarde nul is, is het gegevensgedeelte van het bericht leeg (alleen significant in de hoofdmap).recvtype [in]
De MPI_Datatype ingang die het gegevenstype van elk element in recvbuf vertegenwoordigt (alleen significant in de hoofdmap).root [in]
De rang van het ontvangende proces binnen de MPI_Commcomm.comm [in]
De MPI_Comm communicator-ingang.aanvraag [uit]
De MPI_Request ingang die de communicatiebewerking vertegenwoordigt.
Retourwaarde
Retourneert MPI_SUCCESS bij succes. Anders is de retourwaarde een foutcode.
In Fortran wordt de retourwaarde opgeslagen in de parameter IERROR .
Fortran
    MPI_IGATHER(SENDBUF, SENDCOUNT, SENDTYPE, RECVBUF, RECVCOUNT, RECVTYPE,
    ROOT, COMM, REQUEST, IERROR)
        <type> SENDBUF(*), RECVBUF(*)
        INTEGER SENDCOUNT, SENDTYPE, RECVCOUNT, RECVTYPE, ROOT, COMM, REQUEST, IERROR
Opmerkingen
Een niet-blokkerende oproep initieert een collectieve verzamelbewerking die moet worden voltooid in een afzonderlijke voltooiingsoproep. Zodra de bewerking is geïnitieerd, kan deze onafhankelijk van berekeningen of andere communicatie bij de deelnemende processen worden voortgezet. Op deze manier kunnen niet-blokkerende verzamelbewerkingen mogelijke synchronisatie-effecten van verzamelbewerkingen beperken door ze op de 'achtergrond' uit te voeren.
Alle voltooiingsoproepen (bijvoorbeeld MPI_Wait) worden ondersteund voor niet-blokkerende verzamelbewerkingen.
Vereisten
Product  | 
Microsoft MPI v6  | 
Header  | 
Mpi.h; Mpif.h | 
Bibliotheek  | 
Msmpi.lib | 
DLL  | 
Msmpi.dll |