Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zwraca uchwyt do nowego komunikatora, do którego dołączono rozproszone informacje topologii grafu.
Składnia
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
);
Parametry
comm_old [in]
Uchwyt komunikatora bez informacji o topologii (uchwyt).n
Liczba źródeł, dla których ten proces określa krawędzie wychodzące (liczba całkowita nie ujemna).sources[]
Tablica zawierająca n źródeł, dla których to źródło określa krawędzie wychodzące (tablica nie ujemnych liczb całkowitych).stopnie[]
Tablica określająca liczbę miejsc docelowych dla każdego węzła źródłowego w tablicy węzłów źródłowych (tablica nie ujemnych liczb całkowitych).miejsca docelowe[]
Węzły docelowe węzłów źródłowych w tablicy źródeł (tablica nie ujemnych liczb całkowitych).wagi[]
Wagi odpowiednich krawędzi w tablicy miejsc docelowych (tablica nie ujemnych liczb całkowitych).info [in]
Wskazówki dotyczące optymalizacji lub interpretacji wag (uchwyt). Obecnie należy używać MPI_INFO_NULL , ponieważ ta zmienna nie jest używana wewnętrznie.Zmienić kolejność
Klasyfikacje mogą być zmieniane na kolejność (prawda) lub nie (fałsz) (logiczne). Obecnie nie jest to używane wewnętrznie.comm_dist_graph [out]
Obsługa komunikatora za pomocą dołączonych informacji topologii wykresu rozproszonego (uchwyt).
Wartość zwracana
Zwraca MPI_SUCCESS po powodzeniu. W przeciwnym razie zwracana wartość jest kodem błędu.
W fortran wartość zwracana jest przechowywana w parametrze 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
Uwagi
Zarówno tablice źródeł , jak i miejsc docelowych mogą zawierać ten sam węzeł więcej niż raz, a kolejność, w jakiej węzły są wymienione jako miejsca docelowe lub źródła, nie ma znaczenia. Podobnie różne procesy mogą określać krawędzie z tymi samymi węzłami źródłowymi i docelowymi. Węzły źródłowe i docelowe muszą być szeregami procesów comm_old. Różne procesy mogą określać różne liczby węzłów źródłowych i docelowych, a także różne źródła do krawędzi docelowych. Umożliwia to w pełni rozproszoną specyfikację grafu komunikacyjnego. Dozwolone są procesy izolowane (procesy bez krawędzi wychodzących lub przychodzących, czyli procesy, które nie występują jako węzeł źródłowy lub docelowy w specyfikacji grafu).
Liczba procesów w comm_dist_graph jest identyczna z liczbą procesów w comm_old. Wywołanie tej funkcji jest zbiorcze.
W języku C lub FORTRAN aplikacja może dostarczyć MPI_UNWEIGHTED dla tablicy wag , aby wskazać, że wszystkie krawędzie mają taką samą (skutecznie nie) wagę. Błędne jest dostarczanie MPI_UNWEIGHTED dla niektórych, ale nie wszystkich procesów comm_old. Zachowanie w takim przypadku nie jest gwarantowane. Jeśli wykres jest ważony, ale n = 0, MPI_WEIGHTS_EMPTY lub dowolna tablica może zostać przekazana do wag.
Wymagania
Produkt |
Microsoft MPI v6 |
Nagłówek |
Mpi.h; Mpif.h |
Biblioteka |
Msmpi.lib |
DLL |
Msmpi.dll |
Zobacz też
Funkcje topologii procesów MPI
MPI_Dist_graph_create_adjacent