Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Definiuje nowy typ danych, który składa się z podarrani nwymiarowej tablicy nwymiarowej. Podarraj może znajdować się w dowolnym miejscu w pełnej tablicy. Może to być dowolny rozmiar niezerowy, o ile jest w pełni zawarty w tablicy.
Składnia
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
);
Parametry
ndims
Liczba wymiarów tablicy i liczba elementów w parametrach array_of_sizes, array_of_subsizes i array_of_starts .
array_of_sizes
Liczba elementów w każdym wymiarze pełnej tablicy.
array_of_subsizes
Liczba elementów w każdym wymiarze podarray.
array_of_starts
Początkowy indeks podarraju w każdym wymiarze.
order
Kolejność wymiarów.
MPI_ORDER_C
Kolejność główna wiersza, w której wszystkie elementy danego wiersza są przechowywane w sposób ciągły.
MPI_ORDER_FORTRAN
Kolejność główna kolumny, w której wszystkie elementy danej kolumny są przechowywane stale.
Uwaga
Zarówno programy C, jak i Fortran mogą używać jednej z kolejności. Zdefiniowane wartości odzwierciedlają typowe użycie.
stary typ
Określa typ danych każdego elementu.
newtype [out]
Po powrocie zawiera uchwyt MPI_Datatype reprezentujący nowy typ danych.
Wartość zwracana
Zwraca MPI_SUCCESS po powodzeniu. W przeciwnym razie zwracana wartość jest kodem błędu.
W fortran wartość zwracana jest przechowywana w parametrze 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
Uwagi
Funkcja zwraca błąd, jeśli rozmiar podarray przekracza rozmiar tablicy. Dla każdego wymiaru i wartość parametru array_of_subsizes[i] musi być większa lub równa jednemu i mniejszemu lub równemu parametrowi array_of_sizes[i].
Funkcja zwraca błąd, jeśli podarray uruchamia lub kończy się poza granicami tablicy. W przypadku dowolnego wymiaru i wartość parametru musi być równa zero, a suma parametrów array_of_starts[i] i array_of_subsizes[i] musi być mniejsza lub równa wartości parametru array_of_sizes[i]. Jeśli na przykład podarray ma taki sam rozmiar, jak tablica, podarray muszą zaczynać się od zera indeksu. Zakłada się, że tablice mają być indeksowane od zera.
Wymagania
Produkt |
Pakiet redystrybucyjny HPC Pack 2012 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 R2 MS-MPI, pakiet redystrybucyjny HPC Pack 2008 MS-MPI lub narzędzia klienckie HPC Pack 2008 |
Nagłówek |
Mpi.h; Mpif.h |
Biblioteka |
Msmpi.lib |
DLL |
Msmpi.dll |