Partager via


MPI_Init_thread fonction

Initialise l’environnement d’exécution du processus MPI appelant pour l’exécution thread.

Syntaxe

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

Paramètres

  • argc [in, facultatif]
    Pointeur vers le nombre d’arguments du programme. Cette valeur peut être NULL.

  • argv [facultatif]
    Pointeur vers la liste d’arguments du programme. Cette valeur peut être NULL.

  • requis [in]
    Niveau de prise en charge des threads souhaité. Plusieurs processus MPI dans le même travail peuvent utiliser des valeurs différentes.

    MPI_THREAD_SINGLE Un seul thread dans le programme s’exécute.
    MPI_THREAD_FUNNELED Le processus peut contenir plusieurs threads, mais le thread qui a appelé MPI_Init_thread est le seul qui effectue des appels de fonction MPI.
    MPI_THREAD_SERIALIZED Le processus peut contenir plusieurs threads, et tous ces threads peuvent effectuer des appels de fonction MPI, mais un seul à la fois.
    MPI_THREAD_MULTIPLE Plusieurs threads d’application peuvent appeler des fonctions MPI sans aucune restriction. Cette valeur est actuellement prise en charge uniquement sur MS-MPI V6 s’exécutant sur Windows Server 2012, Windows Server 2012 R2, Windows 8 et Windows 8.1.

     

  • fourni [out]
    Niveau de prise en charge des threads fourni. La valeur retournée provient du tableau ci-dessus.

     

Valeur retournée

MPI_SUCCESS si la fonction retourne correctement. Autres codes d’erreur si l’appel a échoué pour d’autres raisons (par exemple, des arguments non valides).

Dans Fortran, la valeur de retour est stockée dans le paramètre IERROR .

Fortran

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

Remarques

Cette fonction doit être appelée par un seul thread. Ce thread sera appelé « Thread principal » et doit être le même thread à appeler MPI_Finalize.

La liaison Fortran de MPI_Init_thread n’accepte pas les paramètres ARGC et ARGV.

Configuration requise

Produit

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

En-tête

Mpi.h ; Mpif.h

Bibliothèque

Msmpi.lib

DLL

Msmpi.dll

Voir aussi

Fonctions externes MPI

MPI_Finalize

MPI_Init