Sdílet prostřednictvím


MPI_Fetch_and_op funkce

Provede atomické čtení,úpravy a zápis u jednoho prvku dat a vrátí datový prvek před operací shromažďování.

Syntaxe

int MPIAPI MPI_Fetch_and_op(
  _In_  void         *origin_addr,
  _Out_ void         *result_addr,
        MPI_Datatype datatype,
        int          target_rank,
        MPI_Aint     target_disp,
        MPI_Op       op,
        MPI_Win      win
);

Parametry

  • origin_addr [v]
    počáteční adresa vyrovnávací paměti

  • result_addr [out]
    počáteční adresa vyrovnávací paměti výsledků

  • Datatype
    datatype of each entry in origin, result and target buffer

  • target_rank
    rank of target

  • target_disp
    posunutí od začátku okna do začátku cílové vyrovnávací paměti

  • Op
    operace redukce

  • Vyhrá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_FETCH_AND_OP(ORIGIN_ADDR, RESULT_ADDR, DATATYPE,
                TARGET_RANK, TARGET_DISP, OP, WIN, IERROR)
        <type> ORIGIN_ADDR(*), RESULT_ADDR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
        INTEGER DATATYPE, TARGET_RANK, OP, WIN, IERROR

Poznámky

Shromážděte jeden prvek datového typu typu od vyrovnávací paměti původu (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ácení ve výsledné vyrovnávací paměti result_addr obsah cílové vyrovnávací paměti před akumulace.

Vyrovnávací paměť původu a výsledku (origin_addr a result_addr) musí být nesouvislé. Jako operaci lze zadat všechny předdefinované operace pro MPI_Reduce, stejně jako MPI_NO_OP nebo MPI_REPLACE. Uživatelem definované funkce nelze použít. Argument datového typu musí být předdefinovaný datový typ. Operace se provádí atomicky.

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

Viz také

Funkce MPI One-Sided Communications