次の方法で共有


MPI_Rget関数

要求ベースの RMA 取得操作。

構文

int MPIAPI MPI_Rget(
  _Out_ void         *origin_addr,
        int          origin_count,
        MPI_Datatype origin_datatype,
        int          target_rank,
        MPI_Aint     target_disp,
        int          target_count,
        MPI_Datatype datatype,
        MPI_Win      win,
  _Out_ MPI_Request  *request
);

パラメーター

  • origin_addr [out]
    データを受信するバッファーのアドレス。

  • origin_count
    配信元バッファー内のエントリの数。

  • origin_datatype
    配信元バッファー内の各エントリのデータ型。

  • target_rank
    ターゲットのランク。

  • target_disp
    ウィンドウの開始からターゲット バッファーの先頭への変位。

  • target_count
    ターゲット バッファー内のエントリの数。

  • datatype
    ターゲット バッファー内の各エントリのデータ型。

  • win
    通信に使用される Window オブジェクト。

  • request [out]
    RMA 要求。

戻り値

成功 したMPI_SUCCESS を返します。 それ以外の場合、戻り値はエラー コードです。

Fortran では、戻り値は IERROR パラメーターに格納されます。

Fortran

    MPI_RGET(ORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK,
                TARGET_DISP, TARGET_COUNT, TARGET_DATATYPE, WIN, REQUEST, IERROR)
        <type> ORIGIN_ADDR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
        INTEGER ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK, TARGET_COUNT, TARGET_DATATYPE, WIN, REQUEST, IERROR

注釈

MPI_Rget、通信要求オブジェクトを割り当て、完了の待機またはテストに使用できる要求ハンドル (引数 要求) に関連付ける点を除き、MPI_Getに似ています。 MPI_Rget操作の完了は、データが配信元バッファーで使用可能であることを示します。 origin_addrがウィンドウにアタッチされているメモリを指している場合は、このウィンドウのプライベート コピーでデータを使用できるようになります。

要件

製品

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 通信関数