MPI_Get_accumulate, funkcja
Wykonuje niepodzielne operacje odczytu i modyfikowania zapisu i zwraca dane przed operacją akumulowania.
Składnia
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 [in]
początkowy adres buforuorigin_count
liczba wpisów w buforzeorigin_datatype
typ danych każdego wpisu buforuresult_addr [out]
początkowy adres buforu wynikówresult_count
liczba wpisów w buforze wynikówresult_datatype
typ danych każdego wpisu w buforze wynikówtarget_rank
ranga elementu docelowegotarget_disp
przesunięcie od początku okna do początku buforu docelowegotarget_count
liczba wpisów w buforze docelowymDatatype
typ danych każdego wpisu w buforze docelowymOp
wstępnie zdefiniowana operacja redukcjiWygrać
obiekt okna
Wartość zwracana
Zwraca MPI_SUCCESS po powodzeniu. W przeciwnym razie zwracana wartość jest kodem błędu.
W fortran wartość zwracana jest przechowywana w parametrze 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
Uwagi
Gromadzić origin_count elementy typu origin_datatype z buforu początkowego (origin_addr) do buforu przy target_disp przesunięcia, w oknie docelowym określonym przez target_rank i wygrać, przy użyciu operacji op i zwrócić w buforze wyników result_addr zawartość buforu docelowego przed akumulacją określoną przez target_disp, target_count i target_datatype. Dane przesyłane z źródła do miejsca docelowego muszą mieścić się bez obcinania w buforze docelowym. Podobnie dane skopiowane z miejsca docelowego do źródła muszą mieścić się bez obcinania w buforze wyników.
Bufory źródła i wyniku (origin_addr i result_addr) muszą być rozłączne. Każdy argument typu danych musi być wstępnie zdefiniowanym typem danych lub pochodnym typem danych, w którym wszystkie podstawowe składniki są tego samego wstępnie zdefiniowanego typu danych. Wszystkie argumenty typu danych muszą być skonstruowane z tego samego wstępnie zdefiniowanego typu danych. Operacja op dotyczy elementów tego wstępnie zdefiniowanego typu. target_datatype nie może określać nakładających się wpisów, a bufor docelowy musi mieścić się w oknie docelowym lub w dołączonej pamięci w oknie dynamicznym. Operacja jest wykonywana niepodziealnie dla każdego podstawowego typu danych.
Wymagania
Produkt |
Pakiet redystrybucyjny HPC Pack 2012 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 R2 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 MS-MPI lub narzędzia klienckie HPC Pack 2008 |
Nagłówek |
Mpi.h; Mpif.h |
Biblioteka |
Msmpi.lib |
DLL |
Msmpi.dll |