Condividi tramite


Spazio dei nomi Concurrency (C++ AMP)

Lo spazio dei nomi Concurrency fornisce le classi e le funzioni che consentono di accelerare l'esecuzione del codice C++ su hardware parallelo.Per ulteriori informazioni, vedere Cenni preliminari su C++ AMP.

namespace Concurrency;

Membri

Hh305267.collapse_all(it-it,VS.110).gifSpazi dei nomi

Nome

Descrizione

Spazio dei nomi Concurrency::direct3d

Lo spazio dei nomi direct3d fornisce funzioni che supportano l'interoperabilità D3D.Abilita il solo utilizzo delle risorse D3D per il calcolo in codice AMP e consente l'utilizzo delle risorse create in AMP nel codice D3D, senza creare copie intermedie ridondanti.È possibile accelerare gradualmente le sezioni impegnative in termini di calcolo delle applicazioni DirectX utilizzando AMP C++ e le API D3D sui dati prodotti dai calcoli AMP.

Spazio dei nomi Concurrency::graphics

Lo spazio dei nomi graphics fornisce tipi e funzioni progettati per la programmazione grafica.

Hh305267.collapse_all(it-it,VS.110).gifClassi

Nome

Descrizione

Classe accelerator

Rappresenta un'astrazione di un nodo fisico di calcolo DP-ottimizzato.

Classe accelerator_view

Rappresenta un'astrazione del dispositivo virtuale in un acceleratore di dati paralleli AMP C++ .

Classe array

Una matrice è un aggregato di dati in un accelerator_view nel dominio della rete.È una raccolta di variabili, una per ogni elemento in un dominio della rete.Ogni variabile contiene un valore corrispondente a un tipo C++.

Classe array_view

Rappresenta una visualizzazione dei dati in un array<T,N>.

Classe extent (C++ AMP)

Rappresenta un vettore di N valori interi che specificano i limiti di uno spazio di dimensione N avente origine in 0.I valori del vettore delle coordinate sono ordinati dal più significativo al meno significativo.Ad esempio, nello spazio cartesiano a 3 dimensioni, il vettore extent (7,5,3) rappresenta uno spazio in cui la coordinata z varia tra 0 e 7, la coordinata y varia da 0 a 5 e la coordinata x varia tra 0 e 3.

Classe index

Definisce un punto di indice a N dimensioni

Classe invalid_compute_domain

Eccezione generata quando il runtime non può iniziare il kernel utilizzando il dominio di calcolo specificato nel sito di chiamata parallel_for_each.

Classe out_of_memory

L'eccezione che è generata quando un metodo ha esito negativo a causa della mancanza di memoria del sistema o del dispositivo.

Classe runtime_exception

Il tipo base per le eccezioni nella libreria C++ Accelerated Massive Parallelism (AMP).

Classe tile_barrier

La classe tile_barrier è una classe di funzionalità che può solo essere creata dal sistema, e passata ad una sezione lambda parallel_for_each come parte del parametro tiled_index.Fornisce un singolo metodo, wait(), il cui scopo è la sincronizzazione dell'esecuzione dei thread in esecuzione nel gruppo di thread (sezione).

Classe tiled_index

Fornisce un indice in un oggetto tiled_grid.Tale classe dispone di proprietà per accedere al'elemento relativo all'origine locale della sezione e relativo all'origine globale.

Classe uninitialized_object

Eccezione che viene generata quando viene utilizzato un oggetto non inizializzato.

Classe unsupported_feature

L'eccezione che viene generata quando viene utilizzata una funzionalità non supportata.

Hh305267.collapse_all(it-it,VS.110).gifEnumerazioni

Nome

Descrizione

Enumerazione queuing_mode

Specifica le modalità di accodamento supportate dall'acceleratore.

Hh305267.collapse_all(it-it,VS.110).gifFunzioni

Nome

Descrizione

Funzione all_memory_fence

Blocca l'esecuzione di tutti i thread in un tile finché tutti gli accessi alla memoria sono stati completati

Funzione atomic_compare_exchange

Di overload.Esegue un contronto-e-scambio atomico di _Value nella posizione di memoria a cui fa riferimento _Dest Compares _Compare_value con il valore della posizione di memoria a cui fa riferimento _Dest.Se sono uguali, si archivia _Value nella posizione di memoria.

[NIB]Funzione atomic_exchange

Di overload.Imposta il valore del percorso puntato da _Dest a _Value come un'operazione atomica.

[NIB]Funzione atomic_fetch_add

Di overload.Esegue un'aggiunta atomica di _Value nella posizione di memoria a cui fa riferimento _Dest.

[NIB]Funzione atomic_fetch_and

Di overload.Esegue un'operazione and bit per bit atomica di _Value nella posizione di memoria a cui fa riferimento _Dest.

Funzione atomic_fetch_dec

Di overload.Esegue un decremento atomico nella posizione di memoria a cui fa riferimento _Dest.

Funzione atomic_fetch_inc

Di overload.Esegue un incremento atomico nella posizione di memoria a cui fa riferimento _Dest.

Funzione atomic_fetch_max

Di overload.Calcola in modo atomico il massimo di _Value e il valore della posizione di memoria a cui fa riferimento _Dest, e memorizza il valore massimo nella posizione di memoria.

Funzione atomic_fetch_min

Di overload.Calcola in modo atomico il minimo di _Value e il valore della posizione di memoria a cui fa riferimento _Dest, e memorizza il valore minimo nella posizione di memoria.

[NIB]Funzione atomic_fetch_or

Di overload.Esegue un'operazione or bit per bit atomica di _Value la posizione di memoria a cui fa riferimento _Dest.

[NIB]Funzione atomic_fetch_sub

Di overload.Esegue una sottrazione atomica di _Value dalla posizione di memoria a cui fa riferimento _Dest.

[NIB]Funzione atomic_fetch_xor

Di overload.Esegue un'operazione xor bit per bit atomica di _Value la posizione di memoria a cui fa riferimento _Dest.

Funzione copy

Copia un oggetto AMP C++.Tutti i requisiti di trasferimento sincrono dei dati vengano soddisfatti.Non è possibile copiare dati quando si sta eseguendo codice su un acceleratore.Il formato generico di questa funzione è copy(src, dest).

Funzione copy_async

Copia un oggetto AMP C++ e restituisce future<void> su cui può esserci attesa.Non è possibile copiare dati quando si sta eseguendo codice su un acceleratore.Il formato generico di questa funzione è copy(src, dest).

Funzione parallel_for_each (C++ AMP)

Esegue una funzione tramite il dominio di calcolo.

Costanti

Nome

Descrizione

Costante HLSL_MAX_NUM_BUFFERS

Il numero massimo di buffer consentiti da DirectX.

Costante MODULENAME_MAX_LENGTH

Memorizza la lunghezza massima del nome del modulo.Questo valore deve essere uguale sul compilatore e sul runtime.

Requisiti

Intestazione: amp.h

Vedere anche

Altre risorse

Riferimento (C++ AMP)