Spec-Zone.ru › GCC 9

6.33.3 Атрибуты функций AMD GCN

Эти атрибуты функций поддерживаются бэкендом AMD GCN:

amdgpu_hsa_kernel

Этот атрибут указывает, что соответствующая функция должна быть скомпилирована как функция ядра, то есть точка входа, которая может быть вызвана из хоста с помощью библиотеки времени выполнения HSA. По умолчанию функции могут вызываться только из других функций GCN.

Этот атрибут неявно применяется к любой функции, названной main, с использованием параметров по умолчанию.

Функции ядра могут возвращать целое значение, которое будет записано в обычном месте в области HSA «kernargs».

Параметры атрибута настраивают значения, передаваемые в функцию ядра драйверами GPU через начальное состояние регистра. Некоторые значения используются компилятором и поэтому принудительно устанавливаются. Включение других параметров может нарушить предположения в компиляторе и/или библиотеках времени выполнения.

private_segment_buffer

Установить флаг enable_sgpr_private_segment_buffer. Всегда включен (необходим для поиска стека).

dispatch_ptr

Установить флаг enable_sgpr_dispatch_ptr. Всегда включен (необходим для определения размеров запуска).

queue_ptr

Установить флаг enable_sgpr_queue_ptr. Всегда включен (необходим для преобразования адресных пространств).

kernarg_segment_ptr

Установить флаг enable_sgpr_kernarg_segment_ptr. Всегда включен (необходим для поиска аргументов ядра, «kernargs»).

dispatch_id

Установить флаг enable_sgpr_dispatch_id.

flat_scratch_init

Установить флаг enable_sgpr_flat_scratch_init.

private_segment_size

Установить флаг enable_sgpr_private_segment_size.

grid_workgroup_count_X

Установить флаг enable_sgpr_grid_workgroup_count_x. Всегда включен (необходим для использования OpenACC/OpenMP).

grid_workgroup_count_Y

Установить флаг enable_sgpr_grid_workgroup_count_y.

grid_workgroup_count_Z

Установить флаг enable_sgpr_grid_workgroup_count_z.

workgroup_id_X

Установить флаг enable_sgpr_workgroup_id_x.

workgroup_id_Y

Установить флаг enable_sgpr_workgroup_id_y.

workgroup_id_Z

Установить флаг enable_sgpr_workgroup_id_z.

workgroup_info

Установить флаг enable_sgpr_workgroup_info.

private_segment_wave_offset

Установить флаг enable_sgpr_private_segment_wave_byte_offset. Всегда включен (необходим для поиска стека).

work_item_id_X

Установить параметр enable_vgpr_workitem_id. Всегда включен (не может быть отключен).

work_item_id_Y

Установить параметр enable_vgpr_workitem_id. Всегда включен (необходим для включения векторизации).

work_item_id_Z

Установить параметр enable_vgpr_workitem_id. Всегда включен (необходим для использования OpenACC/OpenMP).

Далее: Атрибуты функций ARC, Предыдущее: Атрибуты функций AArch64, Вернуться к: Атрибуты функций [Содержание][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-9.5.0/gcc/AMD-GCN-Function-Attributes.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API