Spec-Zone.ru › GCC 11

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

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

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

amdgpu_hsa_kernel

Этот атрибут указывает, что соответствующая функция должна быть скомпилирована как функция ядра, то есть точка входа, которая может быть вызвана из хоста через библиотеку HSA Runtime. По умолчанию функции могут вызываться только из других функций 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-11.4.0/gcc/AMD-GCN-Function-Attributes.html

Spec-Zone.ru

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