Share via


accelerator_view Class

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

Represents a virtual device abstraction on a C++ AMP data-parallel accelerator.

Syntax

class accelerator_view;  

Members

Public Constructors

Name Description
accelerator_view::accelerator_view Constructor Initializes a new instance of the accelerator_view class.
accelerator_view::~accelerator_view Destructor Destroys the accelerator_view object.

Public Methods

Name Description
accelerator_view::create_marker Method Returns a future to track the completion of all commands submitted so far to this accelerator_view object.
accelerator_view::flush Method Submits all pending commands queued to the accelerator_view object to the accelerator for execution.
accelerator_view::get_accelerator Method Returns the accelerator object for the accelerator_view object.
accelerator_view::get_is_auto_selection Method Returns a Boolean value that indicates whether the runtime will automatically select an appropriate accelerator when the accelerator_view object is passed to a parallel_for_each.
accelerator_view::get_is_debug Method Returns a Boolean value that indicates whether the accelerator_view object has the DEBUG layer enabled for extensive error reporting.
accelerator_view::get_queuing_mode Method Returns the queuing mode for the accelerator_view object.
accelerator_view::get_version Method Returns the version of the accelerator_view.
accelerator_view::wait Method Waits for all commands submitted to the accelerator_view object to finish.

Public Operators

Name Description
accelerator_view::operator!= Operator Compares this accelerator_view object with another and returns false if they are the same; otherwise, returns true.
accelerator_view::operator= Operator Copies the contents of the specified accelerator_view object into this one.
accelerator_view::operator== Operator Compares this accelerator_view object with another and returns true if they are the same; otherwise, returns false.

Public Data Members

Name Description
accelerator_view::accelerator Data Member Gets the accelerator object for the accelerator_view object.
accelerator_view::is_auto_selection Data Member Gets a Boolean value that indicates whether the runtime will automatically select an appropriate accelerator when the accelerator_view object is passed to a parallel_for_each.
accelerator_view::is_debug Data Member Gets a Boolean value that indicates whether the accelerator_view object has the DEBUG layer enabled for extensive error reporting.
accelerator_view::queuing_mode Data Member Gets the queuing mode for the accelerator_view object.
accelerator_view::version Data Member Gets the version of the accelerator.

Inheritance Hierarchy

accelerator_view

Remarks

An accelerator_view object represents a logical, isolated view of an accelerator. A single physical compute device can have many logical, isolated accelerator_view objects. Each accelerator has a default accelerator_view object. Additional accelerator_view objects can be created.

Physical devices can be shared among many client threads. Client threads can cooperatively use the same accelerator_view object of an accelerator, or each client can communicate with a compute device via an independent accelerator_view object for isolation from other client threads.

An accelerator_view object can have one of two queuing_mode Enumeration states. If the queuing mode is immediate, commands like copy and parallel_for_each are sent to the corresponding accelerator device as soon as they return to the caller. If the queuing mode is deferred, such commands are queued up on a command queue that corresponds to the accelerator_view object. Commands are not actually sent to the device until flush() is called.

Requirements

Header: amprt.h

Namespace: Concurrency

See Also

Concurrency Namespace (C++ AMP)