array – třída
Představuje datový kontejner, který se používá k přesunutí dat na akcelerátor.
template <
typename _Value_type,
int _Rank
>
friend class array;
Parametry
_Value_type
Typ elementu dat._Rank
Řád objektu array.
Členy
Veřejné konstruktory
Název |
Description |
---|---|
Inicializuje novou instanci třídy array. |
|
Odstraní objekt array. |
Veřejné metody
Název |
Description |
---|---|
Zkopíruje obsah objektu array do jiného objektu array. |
|
Vrátí ukazatel na nezpracovaná data objektu array. |
|
Vrátí objekt accelerator_view, který představuje umístění, kde je daný objekt array umístěn.Tato vlastnost je přístupná pouze na CPU. |
|
Vrátí druhý objekt accelerator_view, který je předán jako parametr při zavolání pracovního konstruktoru pro instanci objektu array. |
|
Vrátí objekt access_type objektu array.Tato metoda je přístupná pouze na CPU. |
|
Vrátí objekt extent objektu array. |
|
Vrátí jednorozměrné pole obsahující všechny prvky v objektu array. |
|
Vrátí dílčí část objektu array nacházející se na zadaném umístění a volitelně také se zadaným rozsahem. |
|
Vrací objekt array_view, který je vytvořen z objektu array. |
Veřejné operátory
Název |
Description |
---|---|
Používá copy(*this, vector) pro implicitní převod pole na vektorový objekt std::vector. |
|
Vrátí hodnotu prvku určeného parametry. |
|
Vrátí hodnotu prvku na zadaném indexu. |
|
Zkopíruje obsah zadaného objektu array do tohoto objektu. |
Veřejné konstanty
Název |
Description |
---|---|
Udržuje řád objektu array. |
Veřejné datové členy
Název |
Description |
---|---|
Získá objekt accelerator_view představující umístění, na kterém je objektu array vyhrazena paměť.Tato vlastnost je přístupná pouze na CPU. |
|
Vrátí druhý objekt accelerator_view, který je předán jako parametr při zavolání pracovního konstruktoru pro instanci objektu array. |
|
Získá access_type, který představuje, jak procesor může získat přístup k úložišti pole. |
|
Vrátí rozsah, který definuje tvar objektu array. |
Poznámky
Typ array<T,N> odpovídá hustému a pravidelnému (nikoli roztřepenému) N-rozměrnému objektu array, který je umístěný v určitém umístění, například akcelerátoru nebo procesoru.Datový typ elementů v objektu array je T, který musí být typu, který je kompatibilní s cílovým akcelerátorem.I přes řád je N objektu array určeno staticky a je součástí typu, v rozsahu objektu array je určeno modulem runtime a je vyjádřeno pomocí třídy extent<N>.
Objekt array může mít libovolný počet dimenzí, i když některé funkce jsou specializované pro objekty array s hodností jeden, dva a tři.Pokud vynecháte argument dimenze, výchozí hodnota je 1.
Data objektu array jsou uložena souvisle v paměti.Prvky, které se liší jednou nejméně významnou dimenzí, v paměti sousedí.
Objekty array jsou logicky považovány za hodnotové typy, protože když je objekt array zkopírován do jiného objektu array, provádí se hluboká kopie.Dva objekty array nikdy neukazují na stejná data.
Typ array<T,N> se používá v několika situacích:
Jako datový zásobník, který lze použít při výpočtech na akcelerátoru.
Jako datový zásobník pro uložení paměti v procesoru hostitele (které lze kopírovat do a z jiných objektů array).
Jako pracovní objekt, který slouží jako rychlý zprostředkovatel při kopiích z hostitele do zařízení.
Hierarchie dědičnosti
array
Požadavky
Hlavička: amp.h
Obor názvů: Souběžnost