array — Klasa
Reprezentuje kontener danych służący do przenoszenia danych do akceleratora.
template <
typename _Value_type,
int _Rank
>
friend class array;
Parametry
_Value_type
Typ elementu danych._Rank
Ranga tablicy.
Elementy członkowskie
Konstruktory publiczne
Nazwa |
Opis |
---|---|
Inicjuje nowe wystąpienie klasy array. |
|
Niszczy obiekt array. |
Metody publiczne
Nazwa |
Opis |
---|---|
Kopiuje zawartość obiektu array do innego obiektu array. |
|
Zwraca wskaźnik do danych pierwotnych tablicy. |
|
Zwraca obiekt accelerator_view reprezentujący lokalizację, w której zaalokowano tablicę.Dostęp do właściwości możliwy jest tylko na procesorze CPU. |
|
Pobiera drugi obiekt accelerator_view, który jest przekazywany jako parametr gdy wywołany zostanie konstruktor tymczasowy do utworzenia wystąpienia obiektu array. |
|
Zwraca access_type tablicy.Dostęp do tej metody możliwy jest tylko na procesorze CPU. |
|
Zwraca obiekt extent dla tablicy. |
|
Zwraca jednowymiarową tablicę, która zawiera wszystkie elementy w obiekcie array. |
|
Zwraca podsekcję obiektu array który znajduje się w określonej lokalizacji i opcjonalnie ma określony zakres. |
|
Zwraca obiekt array_view, który jest zbudowany z obiektu array. |
Operatory publiczne
Nazwa |
Opis |
---|---|
Wykorzystuje copy(*this, vector), aby niejawnie przekonwertować tablicę do obiektu wektora std::vector. |
|
Zwraca wartość elementu, która jest określona przez parametry. |
|
Zwraca element, który jest wskazywany przez określony indeks. |
|
Kopiuje zawartość określonego obiektu array do wskazanego. |
Publiczne stałe
Nazwa |
Opis |
---|---|
Przechowuje rangę tablicy. |
Publiczne elementy członkowskie danych
Nazwa |
Opis |
---|---|
Pobiera obiekt accelerator_view reprezentujący lokalizację, w której zaalokowano tablicę.Dostęp do właściwości możliwy jest tylko na procesorze CPU. |
|
Pobiera drugi obiekt accelerator_view, który jest przekazywany jako parametr gdy wywołany zostanie konstruktor tymczasowy do utworzenia wystąpienia obiektu array. |
|
Pobiera atrybut access_type, który reprezentuje, jak procesor może mieć dostęp do magazynu tablicy. |
|
Pobiera zakres, który definiuje kształt tablicy. |
Uwagi
Typ array<T,N> reprezentuje gęstą i regularną (niepostrzępioną) N-wymiarową tablicę znajdującą się w określonej lokalizacji, na przykład w akceleratorze lub procesorze CPU.Typ danych elementów w tablicy to T, który musi być zgodny z akceleratorem docelowego typu.Mimo rangi N (z tablicy jest określana statycznie i jest częścią typu), zakres tablicy jest ustalany w czasie wykonywania i jest wyrażany za pomocą klasy extent<N>.
Tablica może mieć dowolną liczbę wymiarów, chociaż niektóre funkcje są ukierunkowane na obiekty array o liczbie wymiarów równej jeden, dwa lub trzy.Jeśli pominięto argument wymiaru, wartość domyślna to 1.
Dane tablicy są rozmieszczone jako obszar ciągły w pamięci.Elementy, które różnią się o jeden w najmniej znaczącym wymiarze, sąsiadują ze sobą w pamięci.
Tablice są logicznie uznawane za typy wartości, ponieważ podczas kopiowania tablicy do innej tablicy wykonywana jest głęboka kopia.Dwie tablice nigdy nie wskazują na te same dane.
Typ array<T,N> jest używany w kilku przypadkach:
Jako kontener danych, który może być używany w obliczeniach na akceleratorze.
Jako kontener danych do przechowywania pamięci na hoście procesora (który można skopiować do i z innych tablic).
Jako tymczasowy obiekt w roli szybkiego pośrednika w kopiowaniu danych z hosta na urządzenia.
Hierarchia dziedziczenia
array
Wymagania
Nagłówek: amp.h
Przestrzeń nazw: Concurrency