Spec-Zone.ru › GCC 9

3.18.35 Nvidia PTX Параметры

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

-m32
-m64

Генерация кода для 32-битной или 64-битной ABI.

-misa=ISA-string

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

-mmainkernel

Связывание кода для __main ядра. Это для автономного, а не для загрузки выполнения.

-moptimize

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

-msoft-stack

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

-muniform-simt

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

-mgomp

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

Следующее: Параметры OpenRISC, Предыдущее: Параметры Nios II, Наверх: Параметры Подмоделей [Содержание][Индекс]

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

Spec-Zone.ru

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