accelerator 類別

 

如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件

加速器是最佳化的資料平行運算的硬體功能。 加速器可能連接到 (例如 GPU) PCIe 匯流排的裝置,或可能是主要的 CPU 上設定的延伸的指令。

class accelerator;  

公用建構函式

名稱說明
accelerator:: accelerator 建構函式初始化 accelerator 類別的新執行個體。
accelerator:: ~ accelerator 解構函式終結 accelerator 物件。

公用方法

名稱說明
accelerator:: create_view 方法建立並傳回 accelerator_view 這個加速器上的物件。
accelerator:: get_all 方法傳回向量的位元 accelerator 物件,代表所有可用的快速鍵。
accelerator:: get_auto_selection_view 方法傳回自動選取項目 accelerator_view
accelerator:: get_dedicated_memory 方法傳回的專用的記憶體 accelerator, ,以 kb 為單位。
accelerator:: get_default_cpu_access_type 方法傳回的預設 access_type 這個加速器上建立的緩衝區。
accelerator:: get_default_view 方法傳回的預設 accelerator_view 相關聯的物件 accelerator
accelerator:: get_description 方法傳回的簡短描述 accelerator 裝置。
accelerator:: get_device_path 方法傳回裝置的路徑。
accelerator:: get_has_display 方法決定是否 accelerator 附加至顯示。
accelerator:: get_is_debug 方法決定是否 accelerator 已啟用大量錯誤報告的偵錯層。
accelerator:: get_is_emulated 方法決定是否 accelerator 會模擬。
accelerator:: get_supports_cpu_shared_memory 方法決定是否 accelerator 支援共用記憶體
accelerator:: get_supports_double_precision 方法決定是否 accelerator 附加至顯示。
accelerator:: get_supports_limited_double_precision 方法決定是否 accelerator 雙精度數學的支援有限。
accelerator:: get_version 方法傳回的版本 accelerator
accelerator:: set_default 方法傳回在預設加速器的路徑。
accelerator:: set_default_cpu_access_type 方法設定預設 CPU access_type 陣列和隱含的記憶體配置,這對 accelerator

公用運算子

名稱說明
accelerator:: operator ! = 運算子比較這個 accelerator 與另一個物件,然後傳回 false 如果兩個名稱相同; 否則會傳回 true
accelerator:: operator = 運算子將指定的內容複製 accelerator 這個物件。
accelerator:: operator = = 運算子比較這個 accelerator 與另一個物件,然後傳回 true 如果兩個名稱相同; 否則會傳回 false

公用資料成員

名稱說明
accelerator:: cpu_accelerator 資料成員取得 cpu 的常數字串 accelerator
accelerator:: dedicated_memory 資料成員取得的專用的記憶體 accelerator, ,以 kb 為單位。
accelerator:: default_accelerator 資料成員取得預設的字串常數 accelerator
accelerator:: default_cpu_access_type 資料成員取得或設定預設 CPU access_type 陣列和隱含的記憶體配置,這對 accelerator
accelerator:: default_view 資料成員取得預設 accelerator_view 相關聯的物件 accelerator
accelerator:: description 資料成員取得的簡短描述 accelerator 裝置。
accelerator:: device_path 資料成員取得裝置的路徑。
accelerator:: direct3d_ref 資料成員取得字串常數的 Direct3D 參考 accelerator
accelerator:: direct3d_warp 資料成員取得字串常數的 加速器 物件,您可以使用使用 Streaming SIMD Extensions (SSE) 的多核心 Cpu 上執行 c + + AMP 程式碼。
accelerator:: has_display 資料成員取得布林值,指出是否 accelerator 附加至顯示。
accelerator:: is_debug 資料成員指出是否 accelerator 已啟用大量錯誤報告的偵錯層。
accelerator:: is_emulated 資料成員指出是否 accelerator 會模擬。
accelerator:: supports_cpu_shared_memory 資料成員指出是否 accelerator 支援共用記憶體。
accelerator:: supports_double_precision 資料成員指出對應是否支援雙精確度運算。
accelerator:: supports_limited_double_precision 資料成員指出是否加速器支援有限的雙精確度運算。
accelerator:: version 資料成員取得版本 accelerator

accelerator

加速器是最佳化的資料平行運算的硬體功能。 加速器通常不連續的 GPU,但它也可以是虛擬的主應用程式端實體,例如彎曲 (加速透過 SSE 指令的 CPU 端裝置) 或 CPU 本身的 DirectX REF 裝置。

您可以建構 accelerator 列舉可用的裝置,或藉由取得預設的裝置、 參考裝置或彎曲裝置物件。

標頭︰ amprt.h

命名空間: 並行

終結 加速器 物件。

~accelerator();

傳回值

初始化的新執行個體 加速器類別

accelerator();

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

 
accelerator(const accelerator& _Other);

參數

_Device_path
實體裝置的路徑。

_Other
若要複製加速器。

取得 CPU 加速器常數字串。

static const wchar_t cpu_accelerator[];  

建立並傳回 accelerator_view 這個加速器,使用指定的佇列模式上的物件。 未指定的佇列模式時,新 accelerator_view 使用 queuing_mode::immediate 佇列模式。

accelerator_view create_view(queuing_mode qmode = queuing_mode_automatic);

參數

qmode
佇列的模式。

傳回值

accelerator_view 這個加速器,使用指定的佇列模式上的物件。

取得的專用的記憶體 加速器, ,以 kb 為單位。

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

取得預設的字串常數 加速器

static const wchar_t default_accelerator[];  

預設 cpu access_type 陣列和隱含的記憶體配置,這對 accelerator

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

取得相關聯的預設加速器檢視 加速器

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

取得的簡短描述 加速器 裝置。

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

取得此加速器的路徑。 此路徑是唯一的系統上。

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

取得 Direct3D 參考快速鍵的字串常數。

static const wchar_t direct3d_ref[];  

取得字串常數的 加速器 物件,您可以用在多核心 Cpu 使用 Streaming SIMD Extensions (SSE) 上執行您的 c + + AMP 程式碼。

static const wchar_t direct3d_warp[];  

傳回向量的位元 accelerator 物件,代表所有可用的快速鍵。

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

傳回值

向量的可用加速器

傳回自動選取 accelerator_view 中,當指定為執行 parallel_for_each 核心執行階段會自動選取目標 accelerator_view parallel_for_each 目標結果。 基於其他目的,這個方法所傳回的 accelerator_view 等同於在預設加速器的預設 accelerator_view

static accelerator_view __cdecl get_auto_selection_view();

傳回值

自動選取 accelerator_view 中。

傳回的專用的記憶體 加速器, ,以 kb 為單位。

size_t get_dedicated_memory() const;

 

傳回值

專用的記憶體 accelerator, ,以 kb 為單位。

取得預設 cpu access_type 這個加速器上建立的緩衝區

access_type get_default_cpu_access_type() const;

 

傳回值

在這個加速器上建立的緩衝區預設 cpu access_type。

傳回的預設 accelerator_view 相關聯的物件 加速器

accelerator_view get_default_view() const;

 

傳回值

預設 accelerator_view 相關聯的物件 accelerator

傳回的簡短描述 加速器 裝置。

std::wstring get_description() const;

 

傳回值

簡短描述 accelerator 裝置。

傳回此加速器的路徑。 此路徑是唯一的系統上。

std::wstring get_device_path() const;

 

傳回值

整個系統的唯一裝置執行個體路徑。

傳回布林值,指出是否 加速器 可以顯示輸出。

bool get_has_display() const;

 

傳回值

true 如果 accelerator 可以輸出顯示; 否則 false

決定是否 加速器 已啟用大量錯誤報告的偵錯層。

bool get_is_debug() const;

 

傳回值

true 如果 accelerator 已啟用大量錯誤報告的偵錯層。 否則為 false

決定是否 加速器 會模擬。

bool get_is_emulated() const;

 

傳回值

true 如果 accelerator 會模擬。 否則為 false

傳回布林值,指出是否加速器支援快速鍵和 CPU 都能存取的記憶體。

bool get_supports_cpu_shared_memory() const;

 

傳回值

true 如果加速器支援 CPU 共用記憶體。否則, false

傳回布林值,指出是否加速器支援雙精確度運算,包括融合乘加入 (FMA)、 除法、 對等,以及轉換之間 intdouble

bool get_supports_double_precision() const;

 

傳回值

true 如果此加速器支援雙精確度運算;否則, false

傳回布林值,指出是否加速器支援有限的雙精確度運算。 加速器有只有有限的支援,然後乘以融合加入 (FMA)、 除法、 對等,以及轉換之間 intdouble 不支援。

bool get_supports_limited_double_precision() const;

 

傳回值

true 若對應已限制的雙精確度運算; 支援否則, false

傳回的版本 加速器

unsigned int get_version() const;

 

傳回值

版本 accelerator

取得布林值,指出是否 加速器 可以顯示輸出。

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

取得布林值,指出是否 加速器 已啟用大量錯誤報告的偵錯層。

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

取得布林值,指出是否 加速器 會模擬。

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

比較這個 accelerator 與另一個物件,然後傳回 false 如果兩個名稱相同; 否則會傳回 true

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

 

參數

_Other
accelerator 要與這個比較的物件。

傳回值

false 如果這兩個 accelerator 物件是否相同,否則 true

將指定的內容複製 加速器 這個物件。

accelerator& operator= (const accelerator& _Other);

參數

_Other
accelerator 從複製的物件。

傳回值

參考 accelerator 物件。

比較這個 加速器 與另一個物件,然後傳回 true 如果兩個名稱相同; 否則會傳回 false

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

 

參數

_Other
accelerator 要與這個比較的物件。

傳回值

true 如果其他 accelerator 物件是與此相同 accelerator 物件; 否則 false

設定要用於任何作業,會隱含地使用的預設加速器的預設加速器。 這個方法才會成功執行階段選取的預設加速器不已經使用中的作業,會隱含地使用的預設加速器

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

參數

_Path
要對應的路徑。

傳回值

true 如果呼叫成功設定的預設加速器。 否則為 false

設定預設 cpu access_type,存取此這個加速器的一部分 array_views 建立這個加速器或隱含的記憶體配置的陣列。 如果加速器 default_cpu_access_type 尚未由先前呼叫這個方法的覆寫,而且此快速鍵的執行階段選取 default_cpu_access_type 但尚未使用配置的陣列或備份這個加速器上存取 array_view 是隱含的記憶體配置,這個方法才會成功。

bool set_default_cpu_access_type(access_type _Default_cpu_access_type);

參數

_Default_cpu_access_type
要用於此加速器上陣列/array_view 記憶體配置預設 cpu access_type。

傳回值

布林值,指出已成功地設加速器預設 cpu access_type。

取得布林值,指出是否 accelerator 支援共用記憶體。

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

取得布林值,指出加速器是否支援雙精度數學運算。

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

取得布林值,指出是否加速器支援有限的雙精確度運算。 加速器有只有有限的支援,然後乘以融合加入 (FMA)、 除法、 對等,以及轉換之間 intdouble 不支援。

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

取得版本 加速器

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

終結 accelerator_view 物件。

~accelerator_view();

傳回值

取得 加速器 物件 accelerator_view 物件。

__declspec(property(get= get_accelerator)) Concurrency::accelerator accelerator;  

初始化的新執行個體 accelerator_view 藉由複製現有的類別 accelerator_view 物件。

accelerator_view(const accelerator_view& _Other);

參數

_Other
accelerator_view 要複製物件。

傳回追蹤的完成狀態的所有命令送出到目前為止此 future accelerator_view 物件。

concurrency::completion_future create_marker();

傳回值

追蹤的完成狀態的所有命令送出到目前為止此 future accelerator_view 物件。

送出所有暫止命令排入佇列 accelerator_view 執行對應的物件。

void flush();

傳回值

傳回 void

傳回 加速器 物件 accelerator_view 物件。

accelerator get_accelerator() const;

 

傳回值

accelerator 物件 accelerator_view 物件。

傳回布林值,指出是否執行階段會自動選取適當的加速器 accelerator_view 傳遞至 parallel_for_each

bool get_is_auto_selection() const;

 

傳回值

true 如果執行階段會自動選取適當的對應。否則, false

傳回布林值,指出是否 accelerator_view 物件已啟用大量錯誤報告的偵錯層。

bool get_is_debug() const;

 

傳回值

布林值,指出是否 accelerator_view 物件已啟用大量錯誤報告的偵錯層。

傳回的佇列模式 accelerator_view 物件。

queuing_mode get_queuing_mode() const;

 

傳回值

佇列模式 accelerator_view 物件。

傳回的版本 accelerator_view

unsigned int get_version() const;

 

傳回值

版本 accelerator_view

取得布林值,指出是否執行階段會自動選取適當的加速器 accelerator_view 傳遞至 parallel_for_each

__declspec(property(get= get_is_auto_selection)) bool is_auto_selection;  

取得布林值,指出是否 accelerator_view 物件已啟用大量錯誤報告的偵錯層。

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

比較這個 accelerator_view 與另一個物件,然後傳回 false 如果兩個名稱相同; 否則會傳回 true

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

 

參數

_Other
accelerator_view 要與這個比較的物件。

傳回值

如果這兩個物件相同則為 false,否則為 true

將指定的內容複製 accelerator_view 到這裡的物件。

accelerator_view& operator= (const accelerator_view& _Other);

參數

_Other
accelerator_view 從複製的物件。

傳回值

修改過的參考 accelerator_view 物件。

比較這個 accelerator_view 與另一個物件,然後傳回 true 如果兩個名稱相同; 否則會傳回 false

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

 

參數

_Other
accelerator_view 要與這個比較的物件。

傳回值

如果這兩個物件相同則為 true,否則為 false

取得佇列模式 accelerator_view 物件。

__declspec(property(get= get_queuing_mode)) Concurrency::queuing_mode queuing_mode;  

取得版本 accelerator_view

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

等候所有命令送出至 accelerator_view 物件來完成。

void wait();

傳回值

傳回 void

Concurrency 命名空間 (c + + AMP)

顯示: