accelerator_view クラス
C ++. AMP のデータ並列アクセラレータでの仮想デバイスの抽象化を表します。
構文
class accelerator_view;
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
accelerator_view コンストラクター | accelerator_view クラスの新しいインスタンスを初期化します。 |
~accelerator_view デストラクター | accelerator_view オブジェクトを破棄します。 |
パブリック メソッド
名前 | 説明 |
---|---|
create_marker | これまでにこの accelerator_view オブジェクトに送信されたすべてのコマンドの完了を追跡するために予定を返します。 |
flush | accelerator_view オブジェクトのキューに格納されたすべての保留中のコマンドを実行のためにアクセラレータに送信します。 |
get_accelerator | accelerator オブジェクトの accelerator_view オブジェクトを返します。 |
get_is_auto_selection | accelerator_view オブジェクトが parallel_for_each に渡されたときに、ランタイムが適切なアクセラレータを自動的に選択するかどうかを示すブール値を返します。 |
get_is_debug | accelerator_view オブジェクトに広範なエラー レポートに有効なデバッグ レイヤーがあるかどうかを示すブール値を返します。 |
get_queuing_mode | accelerator_view オブジェクトのキュー モードを返します。 |
get_version | accelerator_view のバージョンを返します。 |
待機 | 終了する accelerator_view オブジェクトに送信されるすべてのコマンドを待機します。 |
パブリック演算子
名前 | 説明 |
---|---|
operator!= | この accelerator_view オブジェクトを別のオブジェクトと比較し、それらが同じである場合は false を返します。それ以外の場合は true を返します。 |
operator= | 指定された accelerator_view オブジェクトの内容をこのオブジェクトにコピーします。 |
operator== | この accelerator_view オブジェクトを別のオブジェクトと比較し、それらが同じである場合は true を返します。それ以外の場合は false を返します。 |
パブリック データ メンバー
名前 | 説明 |
---|---|
アクセラレータ | accelerator オブジェクトの accelerator_view オブジェクトを取得します。 |
is_auto_selection | accelerator_view オブジェクトが parallel_for_each に渡されたときに、ランタイムが適切なアクセラレータを自動的に選択するかどうかを示すブール値を取得します。 |
is_debug | accelerator_view オブジェクトに広範なエラー レポートに有効なデバッグ レイヤーがあるかどうかを示すブール値を取得します。 |
queuing_mode | accelerator_view オブジェクトのキュー モードを取得します。 |
version | accelerator のバージョンを取得します。 |
継承階層
accelerator_view
解説
accelerator_view
オブジェクトは、アクセラレータの論理的で分離されたビューを表します。 単一の物理計算デバイスは、多くの論理的で分離された accelerator_view
オブジェクトを使用できます。 各アクセラレータには既定の accelerator_view
オブジェクトがあります。 追加の accelerator_view
オブジェクトを作成できます。
物理デバイスは、多くのクライアント スレッド間で共有できます。 クライアント スレッドがアクセラレータの同じ accelerator_view
オブジェクトを協調的に使用することができるか、または、各クライアントが他のクライアント スレッドから分離するために独立した accelerator_view
オブジェクトを使用して計算デバイスと通信できます。
accelerator_view
オブジェクトには、queuing_mode 列挙型の 2 つの状態のいずれかを設定できます。 キュー モードが immediate
である場合、copy
および parallel_for_each
のようなコマンドが呼び出し元に戻るとすぐに対応するアクセラレータ デバイスに送信されます。 キュー モードが deferred
の場合、このようなコマンドは accelerator_view
オブジェクトに対応するコマンド キューに置かれます。 コマンドは、flush()
が呼び出されるまでデバイスに実際に送信されません。
要件
ヘッダー: amprt.h
名前空間: Concurrency
アクセラレータ
accelerator_view オブジェクトの accelerator オブジェクトを取得します。
構文
__declspec(property(get= get_accelerator)) Concurrency::accelerator accelerator;
accelerator_view
既存の accelerator_view
オブジェクトをコピーして、accelerator_view クラスの新しいインスタンスを初期化します。
構文
accelerator_view( const accelerator_view & other );
パラメーター
other
コピーする accelerator_view
オブジェクトです。
create_marker
これまでにこの accelerator_view
オブジェクトに送信されたすべてのコマンドの完了を追跡するために予定を返します。
構文
concurrency::completion_future create_marker();
戻り値
これまでこの accelerator_view
オブジェクトに送信されたすべてのコマンドの完了を追跡するための予定です。
flush
accelerator_view オブジェクトのキューに登録された保留中のすべてのコマンドを実行のためにアクセラレータに送信します。
構文
void flush();
戻り値
void
を返します。
get_accelerator
accelerator_view オブジェクトの accelerator オブジェクトを返します。
構文
accelerator get_accelerator() const;
戻り値
accelerator_view オブジェクトの accelerator オブジェクト。
get_is_auto_selection
accelerator_view が parallel_for_each に渡されたときに、ランタイムが適切なアクセラレータを自動的に選択するかどうかを示すブール値を返します。
構文
bool get_is_auto_selection() const;
戻り値
ランタイムが適切なアクセラレータを自動的に選択する場合は true
、それ以外の場合は false
。
get_is_debug
accelerator_view オブジェクトに広範なエラー レポートが有効な DEBUG レイヤーがあるかどうかを示すブール値を返します。
構文
bool get_is_debug() const;
戻り値
accelerator_view
オブジェクトに広範なエラー レポートが有効な DEBUG レイヤーがあるかどうかを示すブール値。
get_queuing_mode
accelerator_view オブジェクトのキュー モードを返します。
構文
queuing_mode get_queuing_mode() const;
戻り値
accelerator_view
オブジェクトのキュー モード。
get_version
accelerator_view のバージョンを返します。
構文
unsigned int get_version() const;
戻り値
accelerator_view
のバージョン。
is_auto_selection
accelerator_view が parallel_for_each に渡されたときに、ランタイムが適切なアクセラレータを自動的に選択するかどうかを示すブール値を取得します。
構文
__declspec(property(get= get_is_auto_selection)) bool is_auto_selection;
is_debug
accelerator_view オブジェクトに広範なエラー レポートが有効な DEBUG レイヤーがあるかどうかを示すブール値を取得します。
構文
__declspec(property(get= get_is_debug)) bool is_debug;
operator!=
この accelerator_view オブジェクトを別のオブジェクトと比較し、それらが同じである場合は false
を返します。それ以外の場合は true
を返します。
構文
bool operator!= ( const accelerator_view & other ) const;
パラメーター
other
このオブジェクトと比較する accelerator_view
オブジェクト。
戻り値
2 つのオブジェクトが同一の場合は false
、それ以外の場合は true
。
operator=
指定された accelerator_view オブジェクトの内容をこのオブジェクトにコピーします。
構文
accelerator_view & operator= ( const accelerator_view & other );
パラメーター
other
コピー元の accelerator_view
オブジェクト。
戻り値
変更された accelerator_view
オブジェクトへの参照。
operator==
この accelerator_view オブジェクトを別のオブジェクトと比較し、それらが同じである場合は true
を返します。それ以外の場合は false
を返します。
構文
bool operator== ( const accelerator_view & other ) const;
パラメーター
other
このオブジェクトと比較する accelerator_view
オブジェクト。
戻り値
2 つのオブジェクトが同一の場合は true
、それ以外の場合は false
。
queuing_mode
accelerator_view オブジェクトのキュー モードを取得します。
構文
__declspec(property(get= get_queuing_mode)) Concurrency::queuing_mode queuing_mode;
version
accelerator_view のバージョンを取得します。
構文
__declspec(property(get= get_version)) unsigned int version;
wait
accelerator_view オブジェクトに送信されたすべてのコマンドが終了するまで待機します。
構文
void wait();
戻り値
void
を返します。
解説
queuing_mode が immediate
の場合、このメソッドはブロックせずにすぐに制御を戻します。
~accelerator_view
accelerator_view オブジェクトを破棄します。
構文
~accelerator_view();