Namespace Concurrency (C++ AMP)
Fornece as classes e funções que aceleram a execução de código C++ no hardware de dados paralelos. Para obter mais informações, consulte Visão geral do C++ AMP
namespace Concurrency;
Membros
Namespaces
Nome |
Descrição |
---|---|
Fornece funções que suportam a interoperabilidade D3D Permite o uso direto de recursos de D3D para o cálculo no código de AMP e o uso de recursos criados no AMP no código de D3D, sem criar cópias intermediários redundantes. Você pode usar o C++ AMP acelerar de forma crescente as seções intensas de cálculo dos seus aplicativos DirectX, e usar o D3D API em dados gerados pelos cálculos AMP. |
|
As funções no namespace de fast_math não são compatíveis com C99. São fornecidas apenas versões de precisão simples de cada função. Essas funções usam as funções intrínsecas do DirectX, que são mais rápidas do que as funções correspondentes no namespace precise_math e não exigem suporte de precisão dupla estendido no acelerador, mas são menos exatas. Há duas versões de cada função para compatibilidade no nível de fonte com o código C99; as duas versões adotam e retornam valores de precisão simples. |
|
Fornece tipos e funções projetadas para a programação de elementos gráficos. |
|
As funções no namespace de precise_math são compatíveis com C99. As versões de precisão simples e de precisão dupla de cada função são incluídas. Essas funções, incluindo as funções de precisão simples, exigem suporte de precisão dupla estendido no acelerador. |
Classes
Nome |
Descrição |
---|---|
Representa uma abstração de um nó de cálculo físico otimizado por DP. |
|
Representa uma abstração de dispositivo virtual em um acelerador de dados paralelo do C++ AMP. |
|
A exceção que é lançada quando uma chamada subjacente de DirectX falha devido ao mecanismo de detecção e de recuperação de tempo limite do Windows. |
|
Uma agregação de dados em um accelerator_view no domínio da grade. Ela é uma coleção de variáveis, uma para cada elemento em um domínio da grade. Cada variável mantém um valor que corresponde a algum tipo do C++. |
|
Representa uma visualização nos dados em uma matriz<T,N>. |
|
Representa um futuro que corresponde à operação assíncrona de C++ AMP. |
|
Representa um vetor de N valores inteiros que especificam os limites de um espaço N-dimensional que tenha uma origem em 0. Os valores no vetor de coordenadas são ordenados do mais significativo para o menos significativo. Por exemplo, no espaço cartesiano tridimensional, o vetor de extensão (7,5,3) representa um espaço no qual a coordenada z varia de 0 a 7, a coordenada y varia de 0 a 5, e a coordenada x varia de 0 a 3. |
|
Define um ponto de índice N dimensional. |
|
A exceção que é lançada quando o tempo de execução não pode iniciar um kernel usando o domínio de cálculo especificado no site de chamada de parallel_for_each. |
|
A exceção que é lançada quando um método falha devido a perda de memória do sistema ou do dispositivo. |
|
O tipo base para exceções na biblioteca C++ AMP. |
|
Uma classe de recurso que pode ser criada somente pelo sistema e é passada para um lambda parallel_for_each lado a lado como parte do parâmetro de tiled_index. Ela fornece um método, wait(), cujo objetivo é sincronizar a execução de threads em execução no grupo de segmentos (tile). |
|
Um objeto tiled_extent é um objeto extent de uma das três dimensões que subdividem o espaço de extensão em blocos de uma, duas ou três dimensões. |
|
Fornece um índice em um objeto tiled_grid. Essa classe possui propriedades para acessar o elemento relacionado à origem do grupo local e relativo à origem global. |
|
A exceção que é lançada quando um objeto não inicializado é usado. |
|
A exceção que é lançada quando um recurso sem suporte é usado. |
Enumerações
Nome |
Descrição |
---|---|
Especifica o tipo de acesso aos dados. |
|
Especifica os modos de fila que são suportados no acelerador. |
Operadores
Operador |
Descrição |
---|---|
Determina se as estruturas de dados especificadas são iguais. |
|
Determina se as estruturas de dados especificadas são desiguais. |
|
Calcula a soma em todo componente dos argumentos especificados. |
|
Calcula a diferença em todo o componente entre os argumentos especificados. |
|
Calcula o produto em todo componente dos argumentos especificados. |
|
Calcula o quociente em todo componente dos argumentos especificados. |
|
Calcula o módulo do primeiro argumento especificado pelo segundo argumento especificado. |
Funções
Nome |
Descrição |
---|---|
Impede a execução de todos os segmentos em um bloco até que todos os acessos à memória sejam concluídos. |
|
Encerra o tempo de execução do C++ AMP. |
|
Sobrecarregado. Se o valor armazenado no local especificado for considerado como igual ao primeiro valor especificado, então o segundo valor especificado será armazenado no mesmo local da operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como o valor especificado como uma operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como a soma desse valor e um valor especificado como uma operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como a combinação bit a bit and desse valor e um valor especificado como uma operação atômica. |
|
Sobrecarregado. Decrementa o valor armazenado no local especificado e armazena o resultado no mesmo local da operação atômica. |
|
Sobrecarregado. Incrementa o valor armazenado no local especificado e armazena o resultado no mesmo local da operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como o maior desse valor e um valor especificado como uma operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como o menor desse valor e um valor especificado como uma operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como a combinação bit a bit or desse valor e um valor especificado como uma operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como a diferença desse valor e um valor especificado como uma operação atômica. |
|
Sobrecarregado. Define o valor armazenado no local especificado como a combinação bit a bit xor desse valor e um valor especificado como uma operação atômica. |
|
Copia um objeto de C++ AMP. Todos os requisitos de transferência síncrona de dados são atendidos. Os dados não podem ser copiados quando o código estiver sendo executado em um acelerador. A forma geral dessa função é copy(src, dest). |
|
Copia um objeto C++ AMP e retorna completion_future que pode ser atendido. Os dados não podem ser copiados quando o código estiver sendo executado em um acelerador. A forma geral dessa função é copy(src, dest). |
|
Anula a execução de uma função que tem a cláusula da restrição restrict(amp). |
|
Imprime uma cadeia de caracteres formatada para a janela de Saída do Visual Studio e gerencia uma exceção de runtime_exception que possui a mesma cadeia de caracteres de formatação. |
|
Imprime uma cadeia de caracteres formatada na janela de Saída do Visual Studio. É chamada de uma função que possui a cláusula da restrição restrict(amp). |
|
Impede a execução de todos os segmentos em um bloco até que todos os acessos de memória globais estejam concluídos. |
|
Executa uma função através do domínio do cálculo. |
|
Impede a execução de todos os segmentos em um bloco até que os acessos de memória tile_static estejam concluídos. |
Constantes
Nome |
Descrição |
---|---|
O número máximo de buffers permitido pelo DirectX. |
|
Armazena o comprimento máximo do nome do módulo. Esse valor deve ser o mesmo no compilador e no tempo de execução. |
Requisitos
Cabeçalho: amp.h