Поделиться через


Класс accelerator_view

Представляет абстракцию виртуального устройства в асинхронном параллельном акселераторе данных C++ AMP.

Синтаксис

class accelerator_view;

Участники

Открытые конструкторы

Имя Описание
Конструктор accelerator_view Инициализирует новый экземпляр класса accelerator_view.
Деструктор ~accelerator_view Уничтожает accelerator_view объект.

Открытые методы

Имя Описание
create_marker Возвращает будущее для отслеживания завершения всех команд, отправленных до сих пор этому accelerator_view объекту.
сброс Отправляет все накопившиеся команды, поставленные в очередь в 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 Возвращает логическое значение, показывающее, будет ли среда выполнения автоматически выбирать подходящий акселератор при передаче объекта в parallel_for_each.
is_debug Возвращает логическое значение, указывающее, имеет ли accelerator_view объект уровень DEBUG, включенный для обширных отчетов об ошибках.
режим_очереди Возвращает режим очереди для accelerator_view объекта.
версия Возвращает версию ускорителя.

Иерархия наследования

accelerator_view

Замечания

Объект accelerator_view представляет логическое изолированное представление акселератора. Одно физическое вычислительное устройство может иметь множество логических и изолированных accelerator_view объектов. Каждый акселератор имеет объект по умолчанию accelerator_view . Можно создать дополнительные accelerator_view объекты.

Физические устройства можно совместно использовать несколькими потоками клиентов. Клиентские потоки могут совместно использовать один и тот же accelerator_view объект акселератора, или каждый клиент может взаимодействовать с вычислительным устройством через независимый accelerator_view объект для изоляции от других клиентских потоков.

Объект accelerator_view может иметь одно из двух состояний перечисления режима очереди. Если режим очереди является 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( const accelerator_view & other );

Параметры

other
Копируемый объект accelerator_view.

создать_маркер

Возвращает будущее для отслеживания завершения всех команд, отправленных до сих пор этому accelerator_view объекту.

Синтаксис

concurrency::completion_future create_marker();

Возвращаемое значение

Объект 'Future' для отслеживания выполнения всех команд, отправленных до сих пор этому accelerator_view объекту.

сброс

Отправляет на выполнение в акселератор все команды, ожидающие в очереди в объекте 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 слой DEBUG для расширенного создания отчетов об ошибках.

Синтаксис

bool get_is_debug() const;

Возвращаемое значение

Логическое значение, указывающее, имеет ли объект accelerator_view включенный уровень DEBUG для обширных отчетов об ошибках.

режим_очереди_получить

Возвращает режим очереди для объекта accelerator_view.

Синтаксис

queuing_mode get_queuing_mode() const;

Возвращаемое значение

Режим очереди для 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;

is_debug

Возвращает логическое значение, указывающее, включен ли в объекте accelerator_view слой DEBUG для поддержки расширенного отчета об ошибках.

Синтаксис

__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.

режим очереди

Возвращает режим очереди для объекта 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.

Замечания

Если queuing_mode имеет значение immediate, метод возвращается немедленно без блокировки.

~accelerator_view

Уничтожает объект accelerator_view.

Синтаксис

~accelerator_view();

См. также

Пространство имен "Concurrency" (C++ AMP)