次の方法で共有


MPI_Dist_graph_neighbors関数

呼び出し元プロセスとの間にエッジを持つネイバーの一覧と、分散グラフ トポロジの受信エッジと発信エッジの対応する重みを返します。

構文

int WINAPI MPI_Dist_graph_neighbors(
  _In_ MPI_Comm              comm,
       _In_range_(>=,0)  int maxindegree,
       _Out_writes_opt int   sources[],
       _Out_writes_opt int   sourceweights[],
       _In_range_(>=,0)  int maxoutdegree,
       _Out_writes_opt int   destinations[],
       _Out_writes_opt int   destweights[]
);

パラメーター

  • comm [in]
    分散グラフ トポロジを使用したコミュニケーターのハンドル。

  • maxindegree
    ソース配列と sourceweights 配列のサイズ (負以外の整数)。

  • sources[]
    コミュニケーター内のプロセスのランク。呼び出し元のプロセスは、分散グラフ トポロジの宛先 (負以外の整数の配列) です。

  • sourceweights[]
    呼び出し元プロセスへの対応するエッジの重み付け (負以外の整数の配列)。

  • maxoutdegree
    変換先配列と destweights 配列のサイズ (負以外の整数)。

  • destinations[]
    呼び出し元プロセスが分散グラフ トポロジのソースであるコミュニケーター内のプロセスのランク (負以外の整数の配列)。

  • destweights[]
    呼び出しプロセスの対応するエッジの重み (負以外の整数の配列)。

戻り値

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

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

Fortran

    MPI_DIST_GRAPH_NEIGHBORS (COMM, MAXINDEGREE, SOURCES, SOURCEWEIGHTS,
    MAXOUTDEGREE, DESTINATIONS, DESTWEIGHTS, IERROR)
        INTEGER COMM, MAXINDEGREE, SOURCES (*), SOURCEWEIGHTS (*), MAXOUTDEGREE,
    DESTINATIONS (*), DESTWEIGHTS (*), IERROR

注釈

このメソッドを呼び出す前に 、MPI_Dist_graph_neighbors_count を呼び出すことで、受信エッジ数と送信エッジ数と重み情報を取得できます。 maxindegreemaxoutdegree、MPI_Dist_graph_neighbors_countによって返される受信エッジと出力エッジの数より少ない場合は、完全なリストの最初の部分のみが返されます。

受信および出力エッジの重みは、グラフがMPI_Dist_graph_create_adjacentまたはMPI_Dist_graph_createメソッドによって重み付けされた分散グラフとして作成された場合、およびソースウェイトまたはデストウェイトの代わりに引数としてMPI_UNWEIGHTEDが指定されていない場合にのみ返されます。

要件

製品

Microsoft MPI v6

ヘッダー

Mpi.h;Mpif.h

ライブラリ

Msmpi.lib

[DLL]

Msmpi.dll

こちらもご覧ください

MPI プロセス トポロジ関数

MPI_Dist_graph_create

MPI_Dist_graph_neighbors_count

MPI_Dist_graph_create_adjacent