funktionen MPI_Rput
Begärandebaserad RMA-put-åtgärd.
Syntax
int MPIAPI MPI_Rput(
_In_ void *origin_addr,
int origin_count,
MPI_Datatype origin_datatype,
int target_rank,
MPI_Aint target_disp,
int target_count,
MPI_Datatype target_datatype,
MPI_Win win,
_Out_ MPI_Request *request
);
Parametrar
origin_addr [in]
Ursprungsbuffertens ursprungliga adress.origin_count
Antal poster i ursprungsbufferten.origin_datatype
Datatyp för varje post i ursprungsbufferten.target_rank
Rangordning av mål.target_disp
Deplacement från början av fönstret till målbufferten.target_count
Antal poster i målbufferten.target_datatype
Datatyp för varje post i målbufferten.Vinna
Fönsterobjekt som används för kommunikation.begäran [ut]
RMA-begäran.
Returvärde
Returnerar MPI_SUCCESS vid lyckat resultat. Annars är returvärdet en felkod.
I Fortran lagras returvärdet i parametern IERROR .
Fortran
MPI_RPUT(ORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK,
TARGET_DISP, TARGET_COUNT, TARGET_DATATYPE, WIN, REQUEST, IERROR)
<type> ORIGIN_ADDR(*)
INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
INTEGER ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK, TARGET_COUNT,
TARGET_DATATYPE, WIN, REQUEST, IERROR
Kommentarer
MPI_Rput liknar MPI_Put, förutom att det allokerar ett kommunikationsbegärandeobjekt och associerar det med begärandehandtaget ( argumentbegäran). Slutförandet av en MPI_Rput åtgärd (dvs. efter motsvarande test eller väntetid) anger att avsändaren nu är fri att uppdatera platserna i ursprungsbufferten. Det anger inte att data är tillgängliga i målfönstret. Om fjärrslutning krävs kan MPI_Win_flush, MPI_Win_flush_all, MPI_Win_unlock eller MPI_Win_unlock_all användas.
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 |