Spec-Zone.ru › GCC 15

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

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

amdgpu_hsa_kernel

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

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

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

Параметры атрибута настраивают значения, передаваемые драйверами 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).

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

Spec-Zone.ru

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