accelerator_view — Klasa
Reprezentuje abstrakcję urządzenia wirtualnego w akceleratorze równoległym języka C++ AMP.
Składnia
class accelerator_view;
Członkowie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
konstruktor accelerator_view | Inicjuje nowe wystąpienie klasy accelerator_view . |
~accelerator_view Destruktor | accelerator_view Niszczy obiekt. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
create_marker | Zwraca przyszłość do śledzenia ukończenia wszystkich poleceń przesłanych do tej pory do tego accelerator_view obiektu. |
Flush | Przesyła wszystkie oczekujące polecenia w kolejce do accelerator_view obiektu do akceleratora w celu wykonania. |
get_accelerator | accelerator Zwraca obiekt dla accelerator_view obiektu. |
get_is_auto_selection | Zwraca wartość logiczną wskazującą, czy środowisko uruchomieniowe automatycznie wybierze odpowiedni akcelerator po accelerator_view przekazaniu obiektu do parallel_for_each. |
get_is_debug | Zwraca wartość logiczną wskazującą, czy accelerator_view obiekt ma włączoną warstwę DEBUG w celu rozbudowanego raportowania błędów. |
get_queuing_mode | Zwraca tryb kolejkowania dla accelerator_view obiektu. |
get_version | Zwraca wersję pliku accelerator_view . |
Czekać | Czeka na zakończenie wszystkich poleceń przesłanych accelerator_view do obiektu. |
Operatory publiczne
Nazwa/nazwisko | opis |
---|---|
operator!= | Porównuje ten accelerator_view obiekt z innym i zwraca false , jeśli są one takie same; w przeciwnym razie zwraca wartość true . |
operator = | Kopiuje zawartość określonego accelerator_view obiektu do tego. |
operator== | Porównuje ten accelerator_view obiekt z innym i zwraca true , jeśli są one takie same; w przeciwnym razie zwraca wartość false . |
Publiczne elementy członkowskie danych
Nazwa/nazwisko | opis |
---|---|
Akcelerator | accelerator Pobiera obiekt dla accelerator_view obiektu. |
is_auto_selection | Pobiera wartość logiczną wskazującą, czy środowisko uruchomieniowe automatycznie wybierze odpowiedni akcelerator po accelerator_view przekazaniu obiektu do parallel_for_each. |
is_debug | Pobiera wartość logiczną wskazującą, czy accelerator_view obiekt ma włączoną warstwę DEBUG na potrzeby rozbudowanego raportowania błędów. |
queuing_mode | Pobiera tryb kolejkowania dla accelerator_view obiektu. |
version | Pobiera wersję akceleratora. |
Hierarchia dziedziczenia
accelerator_view
Uwagi
Obiekt accelerator_view
reprezentuje logiczny, izolowany widok akceleratora. Jedno fizyczne urządzenie obliczeniowe może mieć wiele obiektów logicznych izolowanych accelerator_view
. Każdy akcelerator ma obiekt domyślny accelerator_view
. Można utworzyć dodatkowe accelerator_view
obiekty.
Urządzenia fizyczne mogą być współużytkowane przez wiele wątków klienta. Wątki klienta mogą używać tego samego accelerator_view
obiektu akceleratora lub każdy klient może komunikować się z urządzeniem obliczeniowym za pośrednictwem niezależnego accelerator_view
obiektu w celu izolacji od innych wątków klienta.
Obiekt accelerator_view
może mieć jeden z dwóch stanów wyliczenia queuing_mode. Jeśli tryb kolejkowania to immediate
, polecenia takie jak copy
i parallel_for_each
są wysyłane do odpowiedniego urządzenia akceleratora natychmiast po powrocie do wywołującego. Jeśli tryb kolejkowania to deferred
, takie polecenia są kolejkowane w kolejce poleceń, która odpowiada obiektowi accelerator_view
. Polecenia nie są rzeczywiście wysyłane do urządzenia do momentu flush()
wywołania.
Wymagania
Nagłówek: amprt.h
Przestrzeń nazw: współbieżność
Akcelerator
Pobiera obiekt akceleratora dla obiektu accelerator_view.
Składnia
__declspec(property(get= get_accelerator)) Concurrency::accelerator accelerator;
Accelerator_view
Inicjuje nowe wystąpienie klasy accelerator_view przez skopiowanie istniejącego accelerator_view
obiektu.
Składnia
accelerator_view( const accelerator_view & other );
Parametry
Innych
Obiekt accelerator_view
do skopiowania.
create_marker
Zwraca przyszłość do śledzenia ukończenia wszystkich poleceń przesłanych do tej pory do tego accelerator_view
obiektu.
Składnia
concurrency::completion_future create_marker();
Wartość zwracana
Przyszłość do śledzenia ukończenia wszystkich poleceń przesłanych do tej pory do tego accelerator_view
obiektu.
opróżnianie
Przesyła wszystkie oczekujące polecenia w kolejce do obiektu accelerator_view do akceleratora w celu wykonania.
Składnia
void flush();
Wartość zwracana
Zwraca wartość void
.
get_accelerator
Zwraca obiekt akceleratora dla obiektu accelerator_view.
Składnia
accelerator get_accelerator() const;
Wartość zwracana
Obiekt akceleratora dla obiektu accelerator_view.
get_is_auto_selection
Zwraca wartość logiczną wskazującą, czy środowisko uruchomieniowe automatycznie wybierze odpowiedni akcelerator po przekazaniu accelerator_view do parallel_for_each.
Składnia
bool get_is_auto_selection() const;
Wartość zwracana
true
jeśli środowisko uruchomieniowe automatycznie wybierze odpowiedni akcelerator; w przeciwnym razie, false
.
get_is_debug
Zwraca wartość logiczną wskazującą, czy obiekt accelerator_view ma włączoną warstwę DEBUG w celu rozbudowanego raportowania błędów.
Składnia
bool get_is_debug() const;
Wartość zwracana
Wartość logiczna wskazująca, czy accelerator_view
obiekt ma włączoną warstwę DEBUG w celu rozbudowanego raportowania błędów.
get_queuing_mode
Zwraca tryb kolejkowania dla obiektu accelerator_view.
Składnia
queuing_mode get_queuing_mode() const;
Wartość zwracana
Tryb kolejkowania dla accelerator_view
obiektu.
get_version
Zwraca wersję accelerator_view.
Składnia
unsigned int get_version() const;
Wartość zwracana
Wersja pliku accelerator_view
.
is_auto_selection
Pobiera wartość logiczną wskazującą, czy środowisko uruchomieniowe automatycznie wybierze odpowiedni akcelerator po przekazaniu accelerator_view do parallel_for_each.
Składnia
__declspec(property(get= get_is_auto_selection)) bool is_auto_selection;
is_debug
Pobiera wartość logiczną wskazującą, czy obiekt accelerator_view ma włączoną warstwę DEBUG w celu rozbudowanego raportowania błędów.
Składnia
__declspec(property(get= get_is_debug)) bool is_debug;
operator!=
Porównuje ten obiekt accelerator_view z innym i zwraca false
, jeśli są one takie same; w przeciwnym razie zwraca wartość true
.
Składnia
bool operator!= ( const accelerator_view & other ) const;
Parametry
Innych
Obiekt accelerator_view
do porównania z tym obiektem.
Wartość zwracana
false
jeśli dwa obiekty są takie same; w przeciwnym razie, true
.
operator =
Kopiuje zawartość określonego obiektu accelerator_view do tego obiektu.
Składnia
accelerator_view & operator= ( const accelerator_view & other );
Parametry
Innych
accelerator_view
Obiekt do skopiowania.
Wartość zwracana
Odwołanie do zmodyfikowanego accelerator_view
obiektu.
operator==
Porównuje ten obiekt accelerator_view z innym i zwraca true
, jeśli są one takie same; w przeciwnym razie zwraca wartość false
.
Składnia
bool operator== ( const accelerator_view & other ) const;
Parametry
Innych
Obiekt accelerator_view
do porównania z tym obiektem.
Wartość zwracana
true
jeśli dwa obiekty są takie same; w przeciwnym razie, false
.
queuing_mode
Pobiera tryb kolejkowania dla obiektu accelerator_view.
Składnia
__declspec(property(get= get_queuing_mode)) Concurrency::queuing_mode queuing_mode;
version
Pobiera wersję accelerator_view.
Składnia
__declspec(property(get= get_version)) unsigned int version;
wait
Czeka na zakończenie wszystkich poleceń przesłanych do obiektu accelerator_view.
Składnia
void wait();
Wartość zwracana
Zwraca wartość void
.
Uwagi
Jeśli queuing_mode to immediate
, ta metoda zwraca natychmiast bez blokowania.
~Accelerator_view
Niszczy obiekt accelerator_view.
Składnia
~accelerator_view();
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla