Udostępnij za pośrednictwem


MPI_Group_range_incl, funkcja

Konstruktor grupy używany do definiowania nowej grupy przez dodanie dodatkowych zestawów rang do istniejącej grupy.

Składnia

int MPIAPI MPI_Group_range_incl(
        MPI_Group         group,
        int               n,
        _In_count_(n) int ranges[][3],
  _Out_ MPI_Group         *newgroup
);

Parametry

  • Grupa
    Istniejąca grupa.

  • n
    Liczba trytrotów w zakresach tablic.

  • Zakresy
    Tablica specyfikacji procesów do uwzględnienia w nowej grupie. Każdy element tablicy określa zakres procesu w postaci trzech liczb całkowitych pierwszej rangi, ostatniej rangi i kroku.

  • newgroup [out]
    Wskaźnik do uchwytu reprezentującego nową grupę. Nowa grupa zawiera dodatkowe zestawy rang. Kolejność jest definiowana przez zakresy.

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_GROUP_RANGE_INCL(GROUP, N, RANGES, NEWGROUP, IERROR)
        INTEGER GROUP, N, RANGES(3,*), NEWGROUP, IERROR

Uwagi

Jeśli zakresy składają się z trytrotów (pierwszy1 , ostatni1, stride1) , ..., (firstn, lastn, striden), a następnie nowa grupa składa się z sekwencji procesów w grupie z rangami first1, first1 + stride1, ..., RoundDown(last1 - first1)/stride1)*stride1, ..., firstn, firstn + striden, ..., RoundDown(lastn - firstn)/striden)*striden.

Każda obliczona ranga musi być prawidłową rangą w nowej grupie, a wszystkie obliczone rangi muszą być odrębne. W przeciwnym razie funkcja zwraca błąd.

Uwaga

Pamiętaj, że można ustawić wartość first[i] większą niż last[i], a krok[i] może być ujemny, ale nie może to być zero.

 

Jest to operacja lokalna. Różne procesy mogą definiować różne grupy. Proces może definiować grupę, która nie zawiera się.

Implementacja mpI nie zapewnia mechanizmu tworzenia grupy od podstaw, ale tylko z istniejących grup. Grupę bazową, na której zdefiniowano wszystkie inne grupy, można pobrać za pomocą funkcji MPI_Comm_group . Jest to grupa skojarzona z początkowym komunikatorem MPI_COMM_WORLD.

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

Zobacz też

Funkcje grupy MPI

MPI_Group_incl

MPI_Comm_group