次の方法で共有


MPI_Win_allocate関数

メモリを割り当てる MPI Window オブジェクトを作成します。

構文

int MPIAPI MPI_Win_allocate(
        MPI_Aint size,
        int      disp_unit,
        MPI_Info info,
        MPI_Comm comm,
  _Out_ void     *baseptr,
  _Out_ MPI_Win  *win
);

パラメーター

  • size
    メモリ ウィンドウのサイズ (バイト単位)。

  • disp_unit
    変位のローカル単位サイズ (バイト単位)。

  • info
    Info 引数。

  • comm
    コミュニケータ。

  • baseptr [out]
    メモリ ウィンドウの初期アドレス。

  • win [out]
    呼び出しによって返される Window オブジェクト。

戻り値

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

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

Fortran

    MPI_WIN_ALLOCATE(SIZE, DISP_UNIT, INFO, COMM, BASEPTR, WIN, IERROR)
        <type> BASEPTR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) SIZE
        INTEGER DISP_UNIT, INFO, COMM, WIN, IERROR

注釈

これは、 comm のグループ内のすべてのプロセスによって実行される集合呼び出しです。各プロセスでは、少なくとも サイズ バイトのメモリを割り当て、それに対するポインターを返し、comm のすべてのプロセスが RMA 操作を実行するために使用できるウィンドウ オブジェクトを返します。 返されるメモリは、アドレス baseptr から始まる各プロセスに対してローカルな サイズ バイトで構成され、ユーザーが既存のメモリで MPI_Win_create 呼び出したかのようにウィンドウに関連付けられます。 size 引数は各プロセスで異なる場合があり、size = 0 が有効です。ただし、高速でグローバルに対称的な割り当てを作成するために、ライブラリはより多くのメモリを割り当てて公開する場合があります。

要件

製品

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