Partilhar via


função MPI_Init_thread

Inicializa o ambiente de execução do processo MPI de chamada para execução por thread.

Sintaxe

int MPIAPI MPI_Init_thread(
  _In_opt_ int                        *argc,
           _In_opt_count_(*argc) char ***argv,
  _In_     int                        required,
  _Out_    int                        *provided
);

Parâmetros

  • argc [in, opcional]
    Um ponteiro para o número de argumentos para o programa. Este valor pode ser NULO.

  • argv [opcional]
    Um ponteiro para a lista de argumentos do programa. Este valor pode ser NULO.

  • necessário [em]
    O nível de suporte de thread pretendido. Vários processos de MPI na mesma tarefa podem utilizar valores diferentes.

    MPI_THREAD_SINGLE Apenas um único thread no programa será executado.
    MPI_THREAD_FUNNELED O processo pode conter vários threads, mas o thread que chamou MPI_Init_thread é o único que faz chamadas à função MPI.
    MPI_THREAD_SERIALIZED O processo pode conter vários threads e todos esses threads podem fazer chamadas de função MPI, mas apenas um de cada vez.
    MPI_THREAD_MULTIPLE Vários threads de aplicações podem chamar funções de MPI sem restrições. Atualmente, este valor só é suportado no MS-MPI V6 em execução no Windows Server 2012, Windows Server 2012 R2, Windows 8 e Windows 8.1.

     

  • fornecido [fora]
    O nível de suporte de thread fornecido. O valor devolvido será da tabela acima.

     

Valor devolvido

MPI_SUCCESS se a função for devolvida com êxito. Outros códigos de erro se a chamada tiver falhado por outros motivos (como argumentos inválidos).

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

Fortran

    MPI_INIT_THREAD(REQUIRED, PROVIDED, IERROR)
        INTEGER REQUIRED, PROVIDED, IERROR

Observações

Esta função tem de ser chamada apenas por um thread. Esse thread será conhecido como "Thread Principal" e tem de ser o mesmo thread para chamar MPI_Finalize.

O enlace fortran do MPI_Init_thread não aceita os parâmetros ARGC e ARGV.

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 Externas do MPI

MPI_Finalize

MPI_Init