accelerator_view, classe
Représente une abstraction d’appareil virtuel sur un accélérateur parallèle de données AMP C++.
Syntaxe
class accelerator_view;
Membres
Constructeurs publics
Nom | Description |
---|---|
constructeur accelerator_view | Initialise une nouvelle instance de la classe accelerator_view . |
~accelerator_view Destructeur | Détruit l’objet accelerator_view . |
Méthodes publiques
Nom | Description |
---|---|
create_marker | Retourne un avenir pour suivre l’achèvement de toutes les commandes soumises jusqu’à présent à cet accelerator_view objet. |
flush | Envoie toutes les commandes en attente mises en file d’attente à l’objet à l’accélérateur accelerator_view pour l’exécution. |
get_accelerator | Retourne l'objet accelerator de l'objet accelerator_view . |
get_is_auto_selection | Retourne une valeur booléenne qui indique si le runtime sélectionne automatiquement un accélérateur approprié lorsque l’objet accelerator_view est passé à un parallel_for_each. |
get_is_debug | Retourne une valeur booléenne qui indique si la accelerator_view couche DEBUG est activée pour un rapport d’erreurs étendu. |
get_queuing_mode | Retourne le mode de mise en file d’attente de l’objet accelerator_view . |
get_version | Retourne la version du accelerator_view . |
wait | Attend que toutes les commandes envoyées à l’objet accelerator_view se terminent. |
Opérateurs publics
Nom | Description |
---|---|
operator!= | Compare cet accelerator_view objet à un autre et retourne false s’ils sont identiques ; sinon, retourne true . |
operator= | Copie le contenu de l’objet spécifié accelerator_view dans celui-ci. |
operator== | Compare cet accelerator_view objet à un autre et retourne true s’ils sont identiques ; sinon, retourne false . |
Membres de données publics
Nom | Description |
---|---|
accélérateur | Obtient l'objet accelerator pour l'objet accelerator_view . |
is_auto_selection | Obtient une valeur booléenne qui indique si le runtime sélectionne automatiquement un accélérateur approprié lorsque l’objet accelerator_view est passé à un parallel_for_each. |
is_debug | Obtient une valeur booléenne qui indique si la accelerator_view couche DEBUG est activée pour un rapport d’erreurs étendu. |
queuing_mode | Obtient le mode de mise en file d’attente de l’objet accelerator_view . |
version | Obtient la version de l’accélérateur. |
Hiérarchie d'héritage
accelerator_view
Notes
Un accelerator_view
objet représente une vue logique et isolée d’un accélérateur. Un seul appareil de calcul physique peut avoir de nombreux objets logiques isolés accelerator_view
. Chaque accélérateur a un objet par défaut accelerator_view
. Des objets supplémentaires accelerator_view
peuvent être créés.
Les appareils physiques peuvent être partagés entre de nombreux threads clients. Les threads clients peuvent utiliser de manière coopérative le même accelerator_view
objet d’un accélérateur, ou chaque client peut communiquer avec un appareil de calcul via un objet indépendant accelerator_view
pour l’isolation à partir d’autres threads clients.
Un accelerator_view
objet peut avoir l’un des deux états d’énumération queuing_mode. Si le mode de mise en file d’attente est immediate
, les commandes comme copy
et parallel_for_each
sont envoyées à l’appareil accélérateur correspondant dès qu’elles reviennent à l’appelant. Si le mode de mise en file d’attente est deferred
, ces commandes sont mises en file d’attente sur une file d’attente de commandes qui correspond à l’objet accelerator_view
. Les commandes ne sont pas réellement envoyées à l’appareil tant qu’elles ne flush()
sont pas appelées.
Spécifications
En-tête : amprt.h
Espace de noms : Concurrency
accélérateur
Obtient l’objet accélérateur de l’objet accelerator_view.
Syntaxe
__declspec(property(get= get_accelerator)) Concurrency::accelerator accelerator;
accelerator_view
Initialise une nouvelle instance de la classe accelerator_view en copiant un objet existant accelerator_view
.
Syntaxe
accelerator_view( const accelerator_view & other );
Paramètres
other
Objet accelerator_view
à copier.
create_marker
Retourne un avenir pour suivre l’achèvement de toutes les commandes soumises jusqu’à présent à cet accelerator_view
objet.
Syntaxe
concurrency::completion_future create_marker();
Valeur de retour
Un avenir pour suivre l’achèvement de toutes les commandes envoyées jusqu’à présent à cet accelerator_view
objet.
flush
Envoie toutes les commandes en attente mises en file d’attente à l’objet accelerator_view à l’accélérateur pour l’exécution.
Syntaxe
void flush();
Valeur de retour
Retourne void
.
get_accelerator
Renvoie l’objet accélérateur de l’objet accelerator_view.
Syntaxe
accelerator get_accelerator() const;
Valeur de retour
Objet accélérateur de l’objet accelerator_view.
get_is_auto_selection
Retourne une valeur booléenne qui indique si le runtime sélectionne automatiquement un accélérateur approprié lorsque le accelerator_view est passé à un parallel_for_each.
Syntaxe
bool get_is_auto_selection() const;
Valeur de retour
true
si le runtime sélectionne automatiquement un accélérateur approprié ; sinon, false
.
get_is_debug
Retourne une valeur booléenne qui indique si l’objet accelerator_view a la couche DEBUG activée pour un rapport d’erreurs étendu.
Syntaxe
bool get_is_debug() const;
Valeur de retour
Valeur booléenne qui indique si la accelerator_view
couche DEBUG est activée pour un rapport d’erreurs étendu.
get_queuing_mode
Retourne le mode de mise en file d’attente de l’objet accelerator_view.
Syntaxe
queuing_mode get_queuing_mode() const;
Valeur de retour
Mode de mise en file d’attente de l’objet accelerator_view
.
get_version
Retourne la version du accelerator_view.
Syntaxe
unsigned int get_version() const;
Valeur de retour
Version du accelerator_view
.
is_auto_selection
Obtient une valeur booléenne qui indique si le runtime sélectionne automatiquement un accélérateur approprié lorsque le accelerator_view est passé à un parallel_for_each.
Syntaxe
__declspec(property(get= get_is_auto_selection)) bool is_auto_selection;
is_debug
Obtient une valeur booléenne qui indique si l’objet accelerator_view a la couche DEBUG activée pour un rapport d’erreurs étendu.
Syntaxe
__declspec(property(get= get_is_debug)) bool is_debug;
!=, opérateur
Compare cet objet accelerator_view avec un autre et retourne false
s’ils sont identiques ; sinon, retourne true
.
Syntaxe
bool operator!= ( const accelerator_view & other ) const;
Paramètres
other
Objet accelerator_view
à comparer à celui-ci.
Valeur de retour
false
si les deux objets sont égaux ; sinon, true
.
opérateur =
Copie le contenu de l’objet accelerator_view spécifié dans celui-ci.
Syntaxe
accelerator_view & operator= ( const accelerator_view & other );
Paramètres
other
Objet accelerator_view
à copier.
Valeur de retour
Référence à l’objet modifié accelerator_view
.
operator==
Compare cet objet accelerator_view avec un autre et retourne true
s’ils sont identiques ; sinon, retourne false
.
Syntaxe
bool operator== ( const accelerator_view & other ) const;
Paramètres
other
Objet accelerator_view
à comparer à celui-ci.
Valeur de retour
true
si les deux objets sont égaux ; sinon, false
.
queuing_mode
Obtient le mode de mise en file d’attente de l’objet accelerator_view.
Syntaxe
__declspec(property(get= get_queuing_mode)) Concurrency::queuing_mode queuing_mode;
version
Obtient la version du accelerator_view.
Syntaxe
__declspec(property(get= get_version)) unsigned int version;
wait
Attend que toutes les commandes envoyées à l’objet accelerator_view se terminent.
Syntaxe
void wait();
Valeur de retour
Retourne void
.
Notes
Si la queuing_mode est immediate
, cette méthode retourne immédiatement sans blocage.
~accelerator_view
Détruit l’objet accelerator_view.
Syntaxe
~accelerator_view();