Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Définit un nouveau type de données qui se compose d’un sous-ensemble à n dimensions d’un tableau à n dimensions. La sous-liste peut se trouver n’importe où dans le tableau complet. Il peut s’agir de n’importe quelle taille différente de zéro tant qu’elle est entièrement contenue dans le tableau.
Syntaxe
int MPIAPI MPI_Type_create_subarray(
int ndims,
_In_count_(ndims) int array_of_sizes[],
_In_count_(ndims) int array_of_subsizes[],
_In_count_(ndims) int array_of_starts[],
int order,
MPI_Datatype oldtype,
_Out_ MPI_Datatype *newtype
);
Paramètres
ndims
Nombre de dimensions de tableau et nombre d’éléments dans les paramètres array_of_sizes, array_of_subsizes et array_of_starts .
array_of_sizes
Nombre d’éléments dans chaque dimension du tableau complet.
array_of_subsizes
Nombre d’éléments dans chaque dimension de la sous-liste.
array_of_starts
Index de départ de la sous-liste dans chaque dimension.
order
Ordre des dimensions.
MPI_ORDER_C
Ordre principal de ligne dans lequel tous les éléments d’une ligne donnée sont stockés de manière contiguë.
MPI_ORDER_FORTRAN
Ordre de colonne-major dans lequel tous les éléments d’une colonne donnée sont stockés de manière contiguë.
Notes
Les programmes C et Fortran peuvent utiliser l’une ou l’autre commande. Les valeurs définies reflètent une utilisation classique.
oldtype
Spécifie le type de données de chaque élément.
newtype [out]
Au retour, contient un handle MPI_Datatype qui représente le nouveau type de données.
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_TYPE_CREATE_SUBARRAY(NDIMS, ARRAY_OF_SIZES, ARRAY_OF_SUBSIZES, ARRAY_OF_STARTS, ORDER, OLDTYPE, NEWTYPE, IERROR)
NDIMS, ARRAY_OF_SIZES, ARRAY_OF_SUBSIZES, ARRAY_OF_STARTS, ORDER, OLDTYPE, NEWTYPE, IERROR
Remarques
La fonction retourne une erreur si la taille de la sous-liste dépasse la taille du tableau. Pour chaque dimension i, la valeur du paramètre array_of_subsizes[i] doit être supérieure ou égale à un et inférieure ou égale au paramètre array_of_sizes[i].
La fonction retourne une erreur si la sous-liste commence ou se termine en dehors des limites du tableau. Pour toute dimension i, la valeur du paramètre doit être égale à zéro et la somme des paramètres array_of_starts[i] et array_of_subsizes[i] doit être inférieure ou égale à la valeur du paramètre array_of_sizes[i]. Par exemple, si la sous-liste a la même taille que le tableau, la sous-liste doit commencer à l’index zéro. Les tableaux sont supposés être indexés à partir de zéro.
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 |