Spec-Zone.ru › GCC 14

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

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

amdgpu_hsa_kernel

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

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

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

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

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-13.3.0/gcc/AMD-GCN-Function-Attributes.html

Spec-Zone.ru

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