Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Provede atomické operace čtení-úpravy-zápisu a vrátí data před operací shromažďování.
Syntaxe
int MPIAPI MPI_Get_accumulate(
_In_ void *origin_addr,
int origin_count,
MPI_Datatype origin_datatype,
_Out_ void *result_addr,
int result_count,
MPI_Datatype result_datatype,
int target_rank,
MPI_Aint target_disp,
int target_count,
MPI_Datatype datatype,
MPI_Op op,
MPI_Win win
);
Parametry
origin_addr [v]
počáteční adresa vyrovnávací pamětiorigin_count
počet položek ve vyrovnávací pamětiorigin_datatype
datový typ jednotlivých položek vyrovnávací pamětiresult_addr [out]
počáteční adresa vyrovnávací paměti výsledkůresult_count
počet položek ve vyrovnávací paměti výsledkůresult_datatype
datový typ každé položky ve vyrovnávací paměti výsledkůtarget_rank
rank of targettarget_disp
posunutí od začátku okna do začátku cílové vyrovnávací pamětitarget_count
počet položek v cílové vyrovnávací pamětiDatatype
datový typ každé položky v cílové vyrovnávací pamětiOp
předdefinovaná operace redukceVyhrát
objekt okna
Vrácená hodnota
Vrátí MPI_SUCCESS při úspěchu. V opačném případě je návratovou hodnotou kód chyby.
Ve Fortranu je vrácená hodnota uložena v parametru IERROR .
Fortran
MPI_GET_ACCUMULATE(ORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, RESULT_ADDR, RESULT_COUNT, RESULT_DATATYPE,
TARGET_RANK, TARGET_DISP, TARGET_COUNT, TARGET_DATATYPE, OP, WIN, IERROR)
<type> ORIGIN_ADDR(*), RESULT_ADDR(*)
INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
INTEGER ORIGIN_COUNT, ORIGIN_DATATYPE, RESULT_COUNT, RESULT_DATATYPE, TARGET_RANK, TARGET_COUNT,
TARGET_DATATYPE, OP, WIN, IERROR
Poznámky
Hromadit origin_count prvky typu origin_datatype z původní vyrovnávací paměti (origin_addr) do vyrovnávací paměti při posunu target_disp, v cílovém okně určeném target_rank a win, pomocí operace op a vrátit ve výsledné vyrovnávací paměti result_addr obsah cílové vyrovnávací paměti před akumulace, určenou target_disp, target_count a target_datatype. Data přenášená z původního zdroje do cíle se musí bez zkrácení vejít do cílové vyrovnávací paměti. Stejně tak data zkopírovaná z cíle do počátku se musí bez zkrácení vejít do výsledné vyrovnávací paměti.
Vyrovnávací paměť původu a výsledku (origin_addr a result_addr) musí být nesouvislé. Každý argument datového typu musí být předdefinovaný datový typ nebo odvozený datový typ, kde všechny základní komponenty mají stejný předdefinovaný datový typ. Všechny argumenty datového typu musí být vytvořeny ze stejného předdefinovaného datového typu. Operace operace se vztahuje na prvky tohoto předdefinovaného typu. target_datatype nesmí určovat překrývající se položky a cílová vyrovnávací paměť se musí vejít do cílového okna nebo do připojené paměti v dynamickém okně. Operace se provádí atomicky pro každý základní datový typ.
Požadavky
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package nebo HPC Pack 2008 Client Utilities |
Hlavička |
Mpi.h; Soubor Mpif.h |
Knihovna |
Msmpi.lib |
DLL |
Msmpi.dll |