MPI_Group_range_incl, fonction
Constructeur de groupe utilisé pour définir un nouveau groupe en ajoutant des ensembles de rangs supplémentaires à un groupe existant.
Syntaxe
int MPIAPI MPI_Group_range_incl(
MPI_Group group,
int n,
_In_count_(n) int ranges[][3],
_Out_ MPI_Group *newgroup
);
Paramètres
groupe
Groupe existant.n
Nombre de triplets dans les plages de tableaux.Gammes
Tableau de spécifications de processus à inclure dans le nouveau groupe. Chaque élément du tableau spécifie une plage de processus sous la forme de trois entiers pour le premier rang, le dernier rang et la foulée.newgroup [out]
Pointeur vers un handle qui représente le nouveau groupe. Le nouveau groupe contient les ensembles de rangs supplémentaires. L’ordre est défini par des plages.
Valeur retournée
Retourne MPI_SUCCESS en cas de réussite. Sinon, la valeur de retour est un code d’erreur.
Dans Fortran, la valeur de retour est stockée dans le paramètre IERROR .
Fortran
MPI_GROUP_RANGE_INCL(GROUP, N, RANGES, NEWGROUP, IERROR)
INTEGER GROUP, N, RANGES(3,*), NEWGROUP, IERROR
Remarques
Si les plages se composent des triplettes (first1 , last1, stride1) , ..., (firstn, lastn, striden), newgroup se compose de la séquence de processus dans le groupe avec les rangs first1, first1 + stride1, ..., RoundDown((last1 - first1)/stride1)*stride1, ..., firstn, firstn + striden, ..., RoundDown((lastn - firstn)/striden)*striden.
Chaque classement calculé doit être un rang valide dans le nouveau groupe, et tous les rangs calculés doivent être distincts. Sinon, la fonction retourne une erreur.
Notes
Notez que vous pouvez définir en premier[i] supérieur à dernier[i] et stride[i] peut être négatif, mais qu’il ne peut pas être égal à zéro.
Il s’agit d’une opération locale. Différents processus peuvent définir des groupes distincts. Un processus peut définir un groupe qui ne s’inclut pas lui-même.
L’implémentation MPI ne fournit pas de mécanisme pour créer un groupe à partir de zéro, mais uniquement à partir de groupes existants. Le groupe de base, sur lequel tous les autres groupes sont définis, peut être récupéré à l’aide de la fonction MPI_Comm_group . Il s’agit du groupe associé au communicateur initial MPI_COMM_WORLD.
Configuration requise
Produit |
Package redistribuable MS-MPI HPC Pack 2012, package redistribuable HPC Pack 2008 R2 MS-MPI, package redistribuable MS-MPI HPC Pack 2008 ou utilitaires clients HPC Pack 2008 |
En-tête |
Mpi.h ; Mpif.h |
Bibliothèque |
Msmpi.lib |
DLL |
Msmpi.dll |