Класс 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 объект уровень DEBUG, включенный для обширных отчетов об ошибках. |
get_queuing_mode | Возвращает режим очереди для accelerator_view объекта. |
get_version | Возвращает версию accelerator_view . |
ждать | Ожидает завершения всех команд, отправленных в accelerator_view объект. |
Открытые операторы
Имя | Описание |
---|---|
оператор!= | Сравнивает этот 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 объект уровень DEBUG, включенный для обширных отчетов об ошибках. |
queuing_mode | Возвращает режим очереди для accelerator_view объекта. |
version | Возвращает версию акселератора. |
Иерархия наследования
accelerator_view
Замечания
Объект accelerator_view
представляет логическое изолированное представление акселератора. Одно физическое вычислительное устройство может иметь множество логических и изолированных accelerator_view
объектов. Каждый акселератор имеет объект по умолчанию accelerator_view
. Можно создать дополнительные accelerator_view
объекты.
Физические устройства можно совместно использовать между многими клиентскими потоками. Клиентские потоки могут совместно использовать один и тот же accelerator_view
объект акселератора, или каждый клиент может взаимодействовать с вычислительным устройством через независимый accelerator_view
объект для изоляции от других клиентских потоков.
Объект accelerator_view
может иметь одно из двух состояний перечисления queuing_mode. Если режим очереди равен immediate
, команды, как copy
и parallel_for_each
отправляются на соответствующее устройство акселератора, как только они возвращаются вызывающему объекту. Если режим очереди установлен deferred
, такие команды помещаются в очередь в очереди команд, соответствующей объекту accelerator_view
. Команды не отправляются на устройство до flush()
вызова.
Требования
Заголовок: amprt.h
Пространство имен : Concurrency
Ускоритель
Возвращает объект акселератора для объекта accelerator_view.
Синтаксис
__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 get_accelerator() const;
Возвращаемое значение
Объект акселератора для объекта accelerator_view.
get_is_auto_selection
Возвращает логическое значение, указывающее, будет ли среда выполнения автоматически выбирать соответствующий акселератор при передаче accelerator_view в parallel_for_each.
Синтаксис
bool get_is_auto_selection() const;
Возвращаемое значение
true
Значение , если среда выполнения автоматически выберет соответствующий акселератор; false
в противном случае .
get_is_debug
Возвращает логическое значение, указывающее, включен ли объект accelerator_view для расширенного создания отчетов об ошибках.
Синтаксис
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 для расширенного отчета об ошибках.
Синтаксис
__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
.
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
для сравнения с этим.
Возвращаемое значение
Значение true
, если два объекта совпадают, в противном случае — значение false
.
queuing_mode
Возвращает режим очереди для объекта accelerator_view.
Синтаксис
__declspec(property(get= get_queuing_mode)) Concurrency::queuing_mode queuing_mode;
версия
Возвращает версию 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();