Compartilhar via


função MPI_Waitsome

Conclui algumas das várias operações pendentes.

Sintaxe

int MPIAPI MPI_Waitsome(
        int                                         incount,
        _Inout_count_(incount) MPI_Request          array_of_requests,
  _Out_ int                                         *outcount,
        _Out_cap_post_count_(incount,*outcount) int *array_of_indices,
        _Out_cap_post_count_(incount,*outcount)     *array_of_statuses
);

Parâmetros

  • incount
    O número de entradas no parâmetro array_of_requests .

  • array_of_requests
    Uma matriz de identificadores MPI_Request de operações pendentes.

  • outcount [out]
    O número de solicitações concluídas.

  • array_of_indices
    Matriz de índices no array_of_requests de operações concluídas. O array_of_requests é indexado de zero em C e de um em Fortran.

  • array_of_statuses
    Matriz de objetos status para operações concluídas ou MPI_STATUSES_IGNORE.

Retornar valor

Retorna MPI_SUCCESS em caso de êxito. Caso contrário, o valor retornado será um código de erro.

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

Fortran

    MPI_WAITSOME(INCOUNT, ARRAY_OF_REQUESTS, OUTCOUNT, ARRAY_OF_INDICES, ARRAY_OF_STATUSES, IERROR)
        INTEGER INCOUNT, ARRAY_OF_REQUESTS(*), OUTCOUNT, ARRAY_OF_INDICES(*),
        ARRAY_OF_STATUSES(MPI_STATUS_SIZE,*), IERROR

Comentários

A matriz de índices está no intervalo de 0 a incount - 1 para C e no intervalo de 1 a incount para Fortran.

As solicitações NULL são ignoradas; se todas as solicitações forem NULL, a rotina retornará com outcount definido como MPI_UNDEFINED.

Embora seja possível listar um identificador de solicitação mais de uma vez no array_of_requests, essa ação é considerada errônea e pode fazer com que o programa termine ou produza resultados incorretos sem especificação.

MPI_Waitsome fornece uma interface muito parecida com as chamadas 'select' ou 'poll' do Unix e, em uma implementação de alta qualidade, indica todas as solicitações que foram concluídas quando MPI_Waitsome é chamado. No entanto, MPI_Waitsome apenas garante que pelo menos uma solicitação tenha sido concluída; não há nenhuma garantia de que todas as solicitações concluídas serão retornadas ou que as entradas em array_of_indices estarão em ordem crescente. Além disso, as solicitações que são concluídas enquanto MPI_Waitsome está em execução podem ou não ser retornadas, dependendo do tempo da conclusão da mensagem.

Requisitos

Produto

Pacote Redistribuível do HPC Pack 2012 MS-MPI, Pacote Redistribuível HPC Pack 2008 R2 MS-MPI, Pacote Redistribuível do HPC Pack 2008 MS-MPI ou Utilitários de Cliente HPC Pack 2008

parâmetro

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Confira também

Funções ponto a ponto do MPI