Dela via


acceleratorklass

En accelerator är en maskinvarufunktion som är optimerad för dataparallell databehandling. En accelerator kan vara en enhet som är ansluten till en PCIe-buss (till exempel en GPU) eller en utökad instruktionsuppsättning för huvudprocessorn.

Syntax

class accelerator;

Medlemmar

Offentliga konstruktorer

Namn Beskrivning
acceleratorkonstruktor Initierar en ny instans av klassen accelerator.
~accelerator destructor Förstör objektet accelerator .

Offentliga metoder

Namn Beskrivning
create_view Skapar och returnerar ett accelerator_view objekt på den här acceleratorn.
get_all Returnerar en vektor med accelerator objekt som representerar alla tillgängliga acceleratorer.
get_auto_selection_view Returnerar den automatiska markeringen accelerator_view.
get_dedicated_memory Returnerar det dedikerade minnet för accelerator, i kilobyte.
get_default_cpu_access_type Returnerar standard access_type för buffertar som skapats på den här acceleratorn.
get_default_view Returnerar standardobjektet accelerator_view som är associerat med accelerator.
get_description Returnerar en kort beskrivning av accelerator enheten.
get_device_path Returnerar enhetens sökväg.
get_has_display Avgör om är accelerator kopplat till en visning.
get_is_debug Avgör om accelerator har DEBUG-lagret aktiverat för omfattande felrapportering.
get_is_emulated Avgör om accelerator den emuleras.
get_supports_cpu_shared_memory Avgör om stöder accelerator delat minne
get_supports_double_precision Avgör om är accelerator kopplat till en visning.
get_supports_limited_double_precision Avgör om accelerator har begränsat stöd för matematik med dubbel precision.
get_version Returnerar versionen av accelerator.
set_default Returnerar sökvägen till standardacceleratorn.
set_default_cpu_access_type Anger standard-CPU-access_type för matriser och implicita minnesallokeringar som görs på den här accelerator.

Offentliga operatörer

Namn Beskrivning
operator!= Jämför det här accelerator objektet med ett annat och returnerar false om de är samma. Annars returneras true.
operator= Kopierar innehållet i det angivna accelerator objektet till det här objektet.
operator== Jämför det här accelerator objektet med ett annat och returnerar true om de är samma. Annars returneras false.

Medlemmar i offentliga data

Namn Beskrivning
cpu_accelerator Hämtar en strängkonstant för processorn accelerator.
dedicated_memory Hämtar det dedikerade minnet för accelerator, i kilobyte.
default_accelerator Hämtar en strängkonstant för standardvärdet accelerator.
default_cpu_access_type Hämtar eller anger standard-CPU-access_type för matriser och implicita minnesallokeringar som görs på den här accelerator.
default_view Hämtar standardobjektet accelerator_view som är associerat med accelerator.
beskrivning Hämtar en kort beskrivning av accelerator enheten.
device_path Hämtar enhetens sökväg.
direct3d_ref Hämtar en strängkonstant för en Direct3D-referens accelerator.
direct3d_warp Hämtar strängkonstanten för ett accelerator objekt som du kan använda för att köra C++ AMP-kod på processorer med flera kärnor som använder SSE (Streaming SIMD Extensions).
has_display Hämtar ett booleskt värde som anger om accelerator är kopplat till en visning.
is_debug Anger om accelerator har DEBUG-lagret aktiverat för omfattande felrapportering.
is_emulated Anger om accelerator den emuleras.
supports_cpu_shared_memory Anger om stöder accelerator delat minne.
supports_double_precision Anger om acceleratorn stöder matematik med dubbel precision.
supports_limited_double_precision Anger om acceleratorn har begränsat stöd för matematik med dubbel precision.
version Hämtar versionen av accelerator.

Arvshierarki

accelerator

Anmärkningar

En accelerator är en maskinvarufunktion som är optimerad för dataparallell databehandling. En accelerator är ofta en diskret GPU, men det kan också vara en virtuell entitet på värdsidan, till exempel en DirectX REF-enhet, en WARP (en processorbaserad enhet som accelereras med hjälp av SSE-instruktioner) eller själva processorn.

Du kan konstruera ett accelerator objekt genom att räkna upp tillgängliga enheter eller genom att hämta standardenheten, referensenheten eller WARP-enheten.

Kravspecifikation

Rubrik: amprt.h

namnområde: Samtidighet

~gaspedal

Förstör objektet accelerator .

~accelerator();

Returvärde

gaspedal

Initierar en ny instans av acceleratorklassen.

accelerator();

explicit accelerator(const std::wstring& _Device_path);

accelerator(const accelerator& _Other);

Parameterar

_Device_path
Sökvägen till den fysiska enheten.

_Annan
Acceleratorn som ska kopieras.

cpu_accelerator

Hämtar en strängkonstant för PROCESSORacceleratorn.

static const wchar_t cpu_accelerator[];

create_view

Skapar och returnerar ett accelerator_view objekt på den här acceleratorn med det angivna köläget. När köläget inte har angetts använder den nya accelerator_viewqueuing_mode::omedelbart köläge.

accelerator_view create_view(queuing_mode qmode = queuing_mode_automatic);

Parameterar

qmode
Köläget.

Returvärde

Ett nytt accelerator_view objekt på den här acceleratorn med det angivna köläget.

dedicated_memory

Hämtar det dedikerade minnet för accelerator, i kilobyte.

__declspec(property(get= get_dedicated_memory)) size_t dedicated_memory;

default_accelerator

Hämtar en strängkonstant för standardvärdet accelerator.

static const wchar_t default_accelerator[];

default_cpu_access_type

Standard-cpu-access_type för matriser och implicita minnesallokeringar som görs på den här accelerator.

__declspec(property(get= get_default_cpu_access_type)) access_type default_cpu_access_type;

default_view

Hämtar standardacceleratorvyn som är associerad med accelerator.

__declspec(property(get= get_default_view)) accelerator_view default_view;

beskrivning

Hämtar en kort beskrivning av accelerator enheten.

__declspec(property(get= get_description)) std::wstring description;

device_path

Hämtar acceleratorns sökväg. Sökvägen är unik i systemet.

__declspec(property(get= get_device_path)) std::wstring device_path;

direct3d_ref

Hämtar en strängkonstant för en Direct3D-referensaccelerator.

static const wchar_t direct3d_ref[];

direct3d_warp

Hämtar strängkonstanten för ett accelerator objekt som du kan använda för att köra C++ AMP-koden på processorer med flera kärnor med hjälp av SSE (Streaming SIMD Extensions).

static const wchar_t direct3d_warp[];

get_all

Returnerar en vektor med accelerator objekt som representerar alla tillgängliga acceleratorer.

static inline std::vector<accelerator> get_all();

Returvärde

Vektorn för tillgängliga acceleratorer

get_auto_selection_view

Returnerar den automatiska markeringen accelerator_view, som när den anges som parallel_for_each mål resulterar i mål accelerator_view för körning av parallel_for_each kernel som ska väljas automatiskt av körningen. I alla andra syften är den accelerator_view som returneras av den här metoden samma som standard accelerator_view för standardacceleratorn

static accelerator_view __cdecl get_auto_selection_view();

Returvärde

Den automatiska markeringen accelerator_view.

get_dedicated_memory

Returnerar det dedikerade minnet för accelerator, i kilobyte.

size_t get_dedicated_memory() const;

Returvärde

Det dedikerade minnet för accelerator, i kilobyte.

get_default_cpu_access_type

Hämtar standard cpu-access_type för buffertar som skapats på den här acceleratorn

access_type get_default_cpu_access_type() const;

Returvärde

Standardprocessorn access_type för buffertar som skapats på den här acceleratorn.

get_default_view

Returnerar standardobjektet accelerator_view som är associerat med accelerator.

accelerator_view get_default_view() const;

Returvärde

accelerator_view Standardobjektet som är associerat med accelerator.

get_description

Returnerar en kort beskrivning av accelerator enheten.

std::wstring get_description() const;

Returvärde

En kort beskrivning av accelerator enheten.

get_device_path

Returnerar acceleratorns sökväg. Sökvägen är unik i systemet.

std::wstring get_device_path() const;

Returvärde

Den systemomfattande unika enhetsinstanssökvägen.

get_has_display

Returnerar ett booleskt värde som anger om can-utdata accelerator ska visas.

bool get_has_display() const;

Returvärde

true accelerator om kan mata ut till en visning, annars , false.

get_is_debug

Avgör om accelerator har DEBUG-lagret aktiverat för omfattande felrapportering.

bool get_is_debug() const;

Returvärde

true accelerator om har FELSÖKNINGsskiktet aktiverat för omfattande felrapportering. Annars, false.

get_is_emulated

Avgör om accelerator den emuleras.

bool get_is_emulated() const;

Returvärde

true om den accelerator emuleras. Annars, false.

get_supports_cpu_shared_memory

Returnerar ett booleskt värde som anger om acceleratorn stöder minne som både acceleratorn och processorn kan komma åt.

bool get_supports_cpu_shared_memory() const;

Returvärde

trueom acceleratorn stöder delat processorminne; annars . false

get_supports_double_precision

Returnerar ett booleskt värde som anger om acceleratorn stöder matematik med dubbel precision, inklusive sammansvetsad multiplikationstillägg (FMA), division, reciprocal och gjutning mellan int och double

bool get_supports_double_precision() const;

Returvärde

trueom acceleratorn stöder matematik med dubbel precision; annars . false

get_supports_limited_double_precision

Returnerar ett booleskt värde som anger om acceleratorn har begränsat stöd för matematik med dubbel precision. Om acceleratorn endast har begränsat stöd, så stöds inte multiplikationstillägg (FMA), division, reciprocal och gjutning mellan int och double .

bool get_supports_limited_double_precision() const;

Returvärde

trueom acceleratorn har begränsat stöd för matematik med dubbel precision; annars . false

get_version

Returnerar versionen av accelerator.

unsigned int get_version() const;

Returvärde

Versionen av accelerator.

has_display

Hämtar ett booleskt värde som anger om accelerator kan-utdata till en visning.

__declspec(property(get= get_has_display)) bool has_display;

is_debug

Hämtar ett booleskt värde som anger om accelerator har DEBUG-lagret aktiverat för omfattande felrapportering.

__declspec(property(get= get_is_debug)) bool is_debug;

is_emulated

Hämtar ett booleskt värde som anger om accelerator är emulerat.

__declspec(property(get= get_is_emulated)) bool is_emulated;

operator!=

Jämför det här accelerator objektet med ett annat och returnerar false om de är samma. Annars returneras true.

bool operator!= (const accelerator& _Other) const;

Parameterar

_Annan
Det accelerator objekt som ska jämföras med det här objektet.

Returvärde

falseom de två accelerator objekten är desamma, annars . true

operator=

Kopierar innehållet i det angivna accelerator objektet till det här objektet.

accelerator& operator= (const accelerator& _Other);

Parameterar

_Annan
Objektet accelerator som ska kopieras från.

Returvärde

En referens till det här accelerator objektet.

operator==

Jämför det här accelerator objektet med ett annat och returnerar true om de är samma. Annars returneras false.

bool operator== (const accelerator& _Other) const;

Parameterar

_Annan
Det accelerator objekt som ska jämföras med det här objektet.

Returvärde

trueom det andra accelerator objektet är samma som det här accelerator objektet, annars . false

set_default

Anger standardacceleratorn som ska användas för alla åtgärder som implicit använder standardacceleratorn. Den här metoden lyckas bara om den valda standardacceleratorn för körning inte redan har använts i en åtgärd som implicit använder standardacceleratorn

static inline bool set_default(std::wstring _Path);

Parameterar

_Stig
Sökvägen till acceleratorn.

Returvärde

true om anropet lyckas med att ange standardacceleratorn. Annars, false.

set_default_cpu_access_type

Ange standard cpu-access_type för matriser som skapats på den här acceleratorn eller för implicita minnesallokeringar som en del av array_views som används på den här acceleratorn. Den här metoden lyckas bara om default_cpu_access_type för acceleratorn inte redan har åsidosatts av ett tidigare anrop till den här metoden och den körning som valts default_cpu_access_type för den här acceleratorn ännu inte har använts för att allokera en matris eller för en implicit minnesallokering som stöder en array_view som används på den här acceleratorn.

bool set_default_cpu_access_type(access_type _Default_cpu_access_type);

Parameterar

_Default_cpu_access_type
Standardprocessorn access_type användas för matris-/array_view minnesallokeringar på den här acceleratorn.

Returvärde

Ett booleskt värde som anger om standardprocessorn access_type för acceleratorn har angetts.

supports_cpu_shared_memory

Hämtar ett booleskt värde som anger om det accelerator stöder delat minne.

__declspec(property(get= get_supports_cpu_shared_memory)) bool supports_cpu_shared_memory;

supports_double_precision

Hämtar ett booleskt värde som anger om acceleratorn stöder matematik med dubbel precision.

__declspec(property(get= get_supports_double_precision)) bool supports_double_precision;

supports_limited_double_precision

Hämtar ett booleskt värde som anger om acceleratorn har begränsat stöd för matematik med dubbel precision. Om acceleratorn endast har begränsat stöd, så stöds inte multiplikationstillägg (FMA), division, reciprocal och gjutning mellan int och double .

__declspec(property(get= get_supports_limited_double_precision)) bool supports_limited_double_precision;

version

Hämtar versionen av accelerator.

__declspec(property(get= get_version)) unsigned int version;

Se även

Namnområde för samtidighet (C++ AMP)