Spec-Zone.ru › GCC 11

Далее: Параметры OpenRISC, Предыдущее: Параметры Nios II, Вверх: Параметры, зависящие от машины [Оглавление][Индекс]

3.19.36 Параметры Nvidia PTX ¶

Эти параметры определены для Nvidia PTX:

-m64

Игнорируется, но сохраняется для обратной совместимости. Поддерживается только 64-битный ABI.

-misa=ISA-string

Генерировать код для указанной ISA PTX (например, ‘sm_35’). Строки ISA должны быть в нижнем регистре. Допустимые строки ISA включают ‘sm_30’ и ‘sm_35’. По умолчанию используется sm_35.

-mmainkernel

Подключать код для ядра __main. Это для автономного, а не для удаленного выполнения.

-moptimize

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

-msoft-stack

Генерировать код, который не использует память .local напрямую для хранения стека. Вместо этого явным образом поддерживается указатель стека на warp. Это позволяет изменять длину стека (с массивами переменной длины или alloca), и при использовании глобальной памяти для базового хранения, делает возможным доступ к автоматическим переменным из других потоков или с атомарными инструкциями. Эта разновидность генерации кода используется для удаленного выполнения OpenMP, но параметр доступен для тестирования компилятора; для генерации кода, подходящего для связывания с программами, использующими удаленное выполнение OpenMP, используйте параметр -mgomp.

-muniform-simt

Переключается на вариант генерации кода, который позволяет выполнять все потоки в каждом warp, сохраняя состояние памяти и побочные эффекты так, как если бы активен был только один поток в каждом warp за пределами областей OpenMP SIMD. Все атомарные операции и вызовы времени выполнения (malloc, free, vprintf) выполняются условно (если текущий индекс потока равен индексу главного потока), и регистр, которому присваивается значение, копируется с помощью инструкции shuffle из главного потока. За пределами областей SIMD главный поток — это поток 0; внутри, каждый поток видит себя как главный. Массив памяти общего доступа int __nvptx_uni[] хранит битовые маски всех нулей или всех единиц для каждого warp, указывая текущий режим (0 за пределами областей SIMD). Каждый поток может выполнить побитовое AND маски в позиции tid.y с текущим индексом потока для вычисления индекса главного потока.

-mgomp

Генерировать код для использования в удаленном выполнении OpenMP: включает параметры -msoft-stack и -muniform-simt, и выбирает соответствующий вариант многофайловой библиотеки.

Далее: Параметры OpenRISC, Предыдущее: Параметры Nios II, Вверх: Параметры, зависящие от машины [Оглавление][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-11.4.0/gcc/Nvidia-PTX-Options.html

Spec-Zone.ru

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