Partilhar via


função MPI_Group_range_incl

Um construtor de grupo que é utilizado para definir um novo grupo ao adicionar conjuntos adicionais de classificações a um grupo existente.

Sintaxe

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

Parâmetros

  • grupo
    O grupo existente.

  • n
    O número de trigémeos em intervalos de matriz.

  • intervalos
    Uma matriz de especificações de processos a incluir no novo grupo. Cada elemento da matriz especifica um intervalo de processos sob a forma de três números inteiros para a primeira classificação, última classificação e passo.

  • newgroup [out]
    Um ponteiro para uma alça que representa o novo grupo. O novo grupo contém os conjuntos adicionais de classificações. A ordem é definida por intervalos.

Valor devolvido

Devolve MPI_SUCCESS com êxito. Caso contrário, o valor devolvido é um código de erro.

Em Fortran, o valor devolvido é armazenado no parâmetro IERROR .

Fortran

    MPI_GROUP_RANGE_INCL(GROUP, N, RANGES, NEWGROUP, IERROR)
        INTEGER GROUP, N, RANGES(3,*), NEWGROUP, IERROR

Observações

Se os intervalos consistiram em trigémeos (primeiro1 , último1, passo1) , ..., (primeiro, último, passo a passo), então newgroup consiste na sequência de processos em grupo com as classificações primeiro1, primeiro1 + passo1, ..., RoundDown((last1 - first1)/stride1)*stride1, ..., firstn, firstn + striden, ..., RoundDown((lastn - firstn)/striden)*striden.

Cada classificação calculada tem de ser uma classificação válida no novo grupo e todas as classificações calculadas têm de ser distintas. Caso contrário, a função devolve um erro.

Nota

Tenha em atenção que pode definir primeiro[i] maior do que o último[i], e stride[i] pode ser negativo, mas não pode ser zero.

 

Esta é uma operação local. Diferentes processos podem definir grupos distintos. Um processo pode definir um grupo que não se inclui a si próprio.

A implementação do MPI não fornece um mecanismo para criar um grupo do zero, mas apenas a partir de grupos existentes. O grupo base, no qual todos os outros grupos são definidos, pode ser obtido com a função MPI_Comm_group . É o grupo que está associado ao MPI_COMM_WORLD do comunicador inicial.

Requisitos

Produto

HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package ou HPC Pack 2008 Client Utilities

Cabeçalho

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Ver também

Funções de Grupo de MPI

MPI_Group_incl

MPI_Comm_group