Spec-Zone.ru › GCC 10

Next: ARC Функциональные атрибуты, Previous: AArch64 Функциональные атрибуты, Up: Объявление атрибутов функций [Оглавление][Индекс]

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

Next: ARC Функциональные атрибуты, Previous: AArch64 Функциональные атрибуты, Up: Объявление атрибутов функций [Оглавление][Индекс]

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

Spec-Zone.ru

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