MPI_Compare_and_swap functie
Voert een externe atomische vergelijkings- en wisselbewerking uit.
Syntaxis
int MPIAPI MPI_Compare_and_swap(
_In_ void *origin_addr,
_In_ void *compare_addr,
_Out_ void *result_addr,
MPI_Datatype datatype,
int target_rank,
MPI_Aint target_disp,
MPI_Win win
);
Parameters
origin_addr [in]
oorspronkelijk adres van buffercompare_addr [in]
oorspronkelijk adres van comparebufferresult_addr [uit]
oorspronkelijk adres van resultaatbufferDatatype
gegevenstype van elke vermelding in alle bufferstarget_rank
rang van doeltarget_disp
verplaatsing van het begin van het venster naar het begin van de doelbufferWinnen
vensterobject
Retourwaarde
Retourneert MPI_SUCCESS bij succes. Anders is de retourwaarde een foutcode.
In Fortran wordt de retourwaarde opgeslagen in de parameter IERROR .
Fortran
MPI_COMPARE_AND_SWAP(ORIGIN_ADDR, COMPARE_ADDR, RESULT_ADDR,
DATATYPE, TARGET_RANK, TARGET_DISP, WIN, IERROR)
<type> ORIGIN_ADDR(*), COMPARE_ADDR(*), RESULT_ADDR(*)
INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
INTEGER DATATYPE, TARGET_RANK, WIN, IERROR
Opmerkingen
Deze functie vergelijkt één element van het type gegevenstype in de vergelijkingsbuffer compare_addr met de buffer bij offset target_disp in het doelvenster dat is opgegeven door target_rank en win . De waarde bij het doel wordt vervangen door de waarde in de oorspronkelijke buffer origin_addr als de vergelijkingsbuffer en de doelbuffer identiek zijn. De oorspronkelijke waarde op het doel wordt geretourneerd in de buffer result_addr. Het gegevenstype van de parameter moet behoren tot een van de volgende categorieën van vooraf gedefinieerde gegevenstypen: geheel getal C, Geheel getal Fortran, Logisch, Typen meerdere talen of Byte. De oorsprong- en resultaatbuffers (origin_addr en result_addr) moeten niet aaneengesloten zijn.
Vereisten
Product |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package of HPC Pack 2008 Client Utilities |
Header |
Mpi.h; Mpif.h |
Bibliotheek |
Msmpi.lib |
DLL |
Msmpi.dll |