MPI_Dist_graph_create函式
傳回附加分散式圖形拓撲資訊之新通訊器的控制碼。
語法
int WINAPI MPI_Dist_graph_create(
_In_ MPI_Comm comm_old,
_In_range_(>=,0) int n,
_In_reads_opt const int sources[],
_In_reads_opt const int degrees[],
_In_opt const int destinations[],
_In_opt const int weights[],
_In_ MPI_Info info,
_In_range_(0,1) int reorder,
_Out_ MPI_Comm *comm_dist_graph
);
參數
comm_old [in]
沒有拓撲資訊的通訊器控制碼, (處理) 。n
這個進程指定傳出邊緣的來源數目, (非負整數) 。sources[]
陣列,其中包含此來源指定非負整數陣列 (傳出邊緣) 的 n 個來源。degrees[]
陣列,指定來源節點陣列中每個來源節點的目的地數目, (非負整數陣列) 。destinations[]
來源陣列中來源節點的目的地節點, (非負整數陣列) 。weights[]
目的地陣列中對應邊緣的加權, (非負整數陣列) 。資訊 [in]
優化或解譯權數 (處理) 的提示。 目前使用 MPI_INFO_Null ,因為此變數未在內部使用。排序
順位可能會重新排序 (true) 或未 (false) (邏輯) 。 目前未在內部使用。comm_dist_graph [out]
具有附加 (處理) 分散式圖形拓撲資訊的通訊器控制碼。
傳回值
傳回成功時 MPI_SUCCESS 。 否則,傳回值是錯誤碼。
在 Fortran 中,傳回值會儲存在 IERROR 參數中。
Fortran
MPI_DIST_GRAPH_CREATE (COMM_OLD, N, SOURCES, DEGREES, DESTINATIONS, WEIGHTS,
INFO, REORDER, COMM_DIST_GRAPH, IERROR)
INTEGER COMM_OLD, N, SOURCES (*), DEGREES (*), DESTINATIONS (*),
WEIGHTS (*), INFO, COMM_DIST_GRAPH, IERROR
LOGICAL REORDER
備註
來源和目的地陣列可能多次包含相同的節點,而且節點列為目的地或來源的順序並不重要。 同樣地,不同的進程可能會指定具有相同來源和目的地節點的邊緣。 來源和目的地節點必須是 進程comm_old的排名。 不同的進程可能會指定不同的來源和目的地節點數目,以及目的地邊緣的不同來源。 這允許通訊圖表的完整分散式規格。 隔離進程 (沒有傳出或傳入邊緣的進程,也就是說,不允許在圖形規格中當做來源或目的地節點發生的進程) 。
comm_dist_graph中的進程數目與comm_old中的進程數目相同。 此函式的呼叫是共同的。
在 C 或 FORTRAN 中,應用程式可以為權數陣列提供MPI_UNWEIGHTED,以表示所有邊緣實際上都具有相同的 (沒有) 權數。 為部分但並非所有 comm_old 程式提供 MPI_UNWEIGHTED錯誤。 這種情況下的行為不保證。 如果圖表為加權,但 n = 0,則 MPI_WEIGHTS_EMPTY 或任何任意陣列可能會傳遞至 權數。
規格需求
產品 |
Microsoft MPI v6 |
標頭 |
Mpi.h;Mpif.h |
媒體櫃 |
Msmpi.lib |
DLL |
Msmpi.dll |
另請參閱
MPI_Dist_graph_create_adjacent