共用方式為


MPI_Get_accumulate函式

執行不可部分完成的讀取-修改-寫入,並在累積作業之前傳回數據。

語法

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
);

參數

  • origin_addr [in]
    緩衝區的初始位址

  • origin_count
    緩衝區中的項目數目

  • origin_datatype
    每個緩衝區項目的數據類型

  • result_addr [out]
    結果緩衝區的初始位址

  • result_count
    結果緩衝區中的項目數目

  • result_datatype
    結果緩衝區中每個專案的數據類型

  • target_rank
    目標排名

  • target_disp
    從視窗開始到目標緩衝區開頭的位移

  • target_count
    目標緩衝區中的項目數目

  • datatype
    目標緩衝區中每個專案的數據類型

  • op
    預先定義的縮減作業

  • win
    window 物件

傳回值

傳回成功 時MPI_SUCCESS 。 否則,傳回值是錯誤碼。

在 Fortran 中,傳回值會儲存在 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

備註

origin_datatypeorigin_counttarget_rank和win 所指定的目標視窗中,使用作業作業,並使用作業作業,結果緩衝區result_addr result_addr累積之前,從源緩衝區 (origin_addr) ,累積至 target_disp緩衝區,並傳回結果緩衝區result_addr目標緩衝區的內容,然後target_disptarget_counttarget_datatype。 從來源傳輸至目標的數據必須符合目標緩衝區中沒有截斷。 同樣地,從目標複製到原始來源的數據必須符合結果緩衝區中不需截斷的數據。

來源和結果緩衝區必須脫離 (origin_addrresult_addr) 。 每個數據類型自變數都必須是預先定義的數據類型或衍生數據類型,其中所有基本元件都是相同的預先定義數據類型。 所有數據類型自變數都必須從相同的預先定義數據類型建構。 作業 作業 會套用至該預先定義型別的專案。 target_datatype 不得指定重疊的專案,而且目標緩衝區必須符合目標視窗或動態視窗中的附加記憶體。 作業會針對每個基本數據類型以不可部分完成的方式執行。

規格需求

產品

HPC Pack 2012 MS-MPI 可轉散發套件、HPC Pack 2008 R2 MS-MPI 可轉散發套件、HPC Pack 2008 MS-MPI 可轉散發套件或 HPC Pack 2008 用戶端公用程式

標頭

Mpi.h;Mpif.h

媒體櫃

Msmpi.lib

DLL

Msmpi.dll

另請參閱

MPI One-Sided Communications 函式