Classe Array
Representa um contêiner de dados usado para mover dados a um acelerador.
template <
typename _Value_type,
int _Rank
>
friend class array;
Parâmetros
_Value_type
O tipo dos elementos de dados._Rank
A classificação da matriz.
Membros
Construtores Públicos
Nome |
Descrição |
---|---|
Inicializa uma nova instância da classe array. |
|
Destrói o objeto array. |
Métodos Públicos
Nome |
|
---|---|
Copia o conteúdo da matriz a outra matriz. |
|
Retorna um ponteiro para os dados brutos do array (matriz). |
|
Retorna o objeto accelerator_view que representa o local no qual a matriz é alocada.Esta propriedade pode ser acessada apenas no CPU. |
|
Obtém o segundo objeto accelerator_view que é passado como um parâmetro quando um construtor de teste é chamado para instanciar o objeto matriz . |
|
Retorna o objeto extent da matriz. |
|
Retorna uma matriz de uma dimensão que contém todos os elementos no objeto array. |
|
Retorna uma seção do objeto matriz que está na fonte especificada e, opcionalmente, que tem a extensão especificada. |
|
Retorna um objeto array_view que é construído do objeto array . |
Operadores Públicos
Nome |
|
---|---|
Usa copy(*this, vector) para converter implicitamente a matriz para um objeto do vetor vetor . |
|
Retorna o valor do elemento que é especificado pelos parâmetros. |
|
Retorna o elemento que está no índice especificado. |
|
Copia o conteúdo do objeto array especificado para esse outro. |
Constantes Públicas
Nome |
|
---|---|
Armazena a classificação do array (matriz). |
Membros de Dados Públicos
Nome |
|
---|---|
Obtém o objeto accelerator_view que representa o local onde a matriz é alocada.Esta propriedade pode ser acessada apenas no CPU. |
|
Obtém o segundo objeto accelerator_view que é passado como um parâmetro quando um construtor de teste é chamado para instanciar o objeto matriz . |
|
Obtém a extensão que define a forma da matriz. |
Comentários
O tipo array<T,N> representa a N-dimensional matriz densa e normal (não denteada) - que está localizado em um local específico, como um acelerador ou o CPU.O tipo de dados dos elementos da matriz é T, que deve ser de um tipo que seja compatível com o acelerador de destino.Apesar de que classificação da matriz, N, é determinado estaticamente e é parte do tipo, a extensão da matriz é determinada em tempo de execução e expressa usando a classe extent<N>.
Uma matriz pode ter qualquer número de dimensões, embora algumas funcionalidades sejam especializadas para objetos array com dimensão um, dois e três.Se você omitir o argumento de dimensão, o padrão é 1.
Os dados de matriz são dispostos contiguamente na memória.Os elementos que diferem por um na dimensão menos significativa são adjacentes na memória.
Matrizes são logicamente consideradas tipos de valor, porque quando uma matriz é copiada a outra matriz, uma cópia profunda é executada.Duas matrizes nunca apontam para os mesmos dados.
O tipo array<T,N> é usado em vários cenários:
Como um recipiente de dados que pode ser usado nos cálculos em um acelerador.
Como um recipiente de dados para armazenar a memória do CPU host (que pode ser usado para copiar para e de outros arrays).
Como um objeto de teste para atuar como intermediário rápido em cópia de host em dispositivo.
Hierarquia de Herança
array
Requisitos
Cabeçalho: amp.h
Namespace: Concurrency