共用方式為


MPI_Dist_graph_create_adjacent函式

傳回附加分散式圖形拓撲資訊之新通訊器的控制碼。

語法

int WINAPI MPI_Dist_graph_create_adjacent(
  _In_  MPI_Comm                comm_old,
        _In_range_(>=,0)  int   indegree,
        _In_reads_opt const int sources[],
        _In_reads_opt const int sourceweights[],
        _In_range_(>=,0)  int   outdegree,
        _In_reads_opt const int destinations[],
        _In_reads_opt const int destweights[],
  _In_  MPI_Info                info,
        _In_range_(0,1) int     reorder,
  _Out_ MPI_Comm                *comm_dist_graph
);

參數

  • comm_old [in]
    沒有拓撲資訊的通訊器控制碼, (處理) 。

  • indegree
    來源sourceweights陣列的大小 (非負整數) 。

  • sources[]
    呼叫進程是非負整數陣列的目的地 (陣列) 的處理常式排名。

  • sourceweights[]
    對應邊緣的加權至呼叫進程, (非負整數陣列) 。

  • outdegree
    目的地destweights陣列的大小, (非負整數) 。

  • destinations[]
    呼叫進程是非負整數) 之來源 (陣列的進程排名。

  • destweights[]
    從呼叫進程外,對應邊緣的加權 (非負整數陣列) 。

  • 資訊 [in]
    優化或解譯權數 (處理) 的提示。 目前使用 MPI_INFO_Null ,因為此變數未在內部使用。

  • 排序
    順位可能會重新排序 (true) 或未 (false) (邏輯) 。 目前未在內部使用。

  • comm_dist_graph [out]
    具有附加 (處理) 分散式圖形拓撲資訊的通訊器控制碼。

傳回值

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

在 Fortran 中,傳回值會儲存在 IERROR 參數中。

Fortran

    MPI_DIST_GRAPH_CREATE_ADJACENT (COMM_OLD, INDEGREE, SOURCES, SOURCEWEIGHTS,
    OUTDEGREE, DESTINATIONS, DESTWEIGHTS, INFO, REORDER,
    COMM_DIST_GRAPH, IERROR)
        INTEGER COMM_OLD, INDEGREE, SOURCES (*), SOURCEWEIGHTS (*), OUTDEGREE,
    DESTINATIONS (*), DESTWEIGHTS (*), INFO, COMM_DIST_GRAPH, IERROR
        LOGICAL REORDER

備註

comm_old通訊器中的每個進程都會傳遞虛擬分散式圖表拓撲中傳入和傳出邊緣的所有資訊。 如果圖表加權,呼叫進程必須確定圖形的每個邊緣都會在來源和目的地進程中以相同的權數來描述。 如果給定的來源目的地配對有多個邊緣,則這些邊緣的加權順序並不重要。

完整的通訊拓撲是 comm_old中所有進程來源陣列中顯示的所有邊緣的組合,必須與 目的地 陣列中顯示的所有邊緣組合相同。 來源和目的地排名必須是處理 comm_old的排名。 這允許通訊圖表的完整分散式規格。 隔離的進程,也就是分散式拓撲中沒有連入或傳出邊緣的進程,因此允許以零為零的 縮排輸出 邊緣。

新建立的 communicator 中的進程數目 comm_dist_graph,與 comm_old中的進程數目相同。 此函式的呼叫是共同的。

如果圖表是加權圖表,則加權會使用 sourceweightsdestweights 陣列指定為非負整數。 應用程式必須同時指定sourceweightsdestweights陣列的MPI_UNWEIGHTED,以指出所有邊緣實際上都具有相同的 (沒有) 權數。 為部分但並非所有 comm_old 程式提供 MPI_UNWEIGHTED錯誤。 這種情況下的行為不保證。 如果圖表是加權的,但進程是不確定輸出為零,則MPI_WEIGHTS_EMPTY或任何任意陣列可能會由該程式傳遞至sourceweights 或 destweights

規格需求

產品

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_neighbors