MPI_Comm_dup, funkcja
Duplikuje istniejący komunikator ze skojarzonymi wartościami kluczy. Dla każdej wartości klucza odpowiednia funkcja wywołania zwrotnego kopiowania określa wartość atrybutu skojarzona z tym kluczem w nowym komunikatorze. Wywołanie zwrotne kopiowania może na przykład usunąć atrybut z nowego komunikatora.
Składnia
int MPIAPI MPI_Comm_dup(
MPI_Comm comm,
_Out_ MPI_Comm *newcomm
);
Parametry
Comm
Komunikator do duplikatu.newcomm [out]
Po powrocie zawiera uchwyt do nowego komunikatora. Nowy komunikator ma tę samą grupę lub grupy i wszelkie skopiowane informacje z pamięci podręcznej ze źródła, ale zawiera nowe informacje kontekstowe.
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_COMM_DUP(COMM,NEWCOMM,IERROR)
INTEGER COMM, NEWCOMM, IERROR
Uwagi
Ta funkcja tworzy zduplikowaną przestrzeń komunikacji, która ma takie same właściwości jak oryginalny komunikator. Obejmuje to wszystkie atrybuty i topologie. Ta funkcja jest prawidłowa, nawet jeśli istnieje oczekująca komunikacja punkt-punkt, która obejmuje komunikator źródłowy.
Użytkownik może wywołać funkcję MPI_Comm_dup na początku procesu równoległego, a później zwolnić zduplikowany komunikator przy użyciu funkcji MPI_Comm_free . Inne modele zarządzania komunikatorami są również możliwe.
Ta funkcja ma zastosowanie zarówno do wewnątrzpolenicatorów, jak i międzypolenicatorów.
Wymagania
Produkt |
Pakiet redystrybucyjny HPC Pack 2012 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 R2 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 MS-MPI lub narzędzia klienckie HPC Pack 2008 |
Nagłówek |
Mpi.h; Mpif.h |
Biblioteka |
Msmpi.lib |
DLL |
Msmpi.dll |