Вопросы по теме 'ptx'

Почему этот NVIDIA CUDA PTX не работает должным образом?
У меня есть этот код, который пытается добавить два вектора с помощью рукописной функции PTX: //kernel.cu #include <stdio.h> #include <cuda.h> int main() { CUdevice device; CUcontext context; CUmodule module;...
69 просмотров
schedule 13.11.2021

Неустранимая ошибка nvcc -ptx file.cu: файл не найден
Я пытаюсь создать код .ptx, используя nvcc для файлов .cu. Для некоторых это работает, а для некоторых выдает ошибку «файл не найден»: macair93278:matrixMul r8t$ nvcc -ptx matrixMul.cu matrixMul.cu:36:10: fatal error: 'helper_functions.h' file...
413 просмотров
schedule 05.04.2022

Код CUDA PTX% envreg ‹32› специальные регистры
Я попытался запустить ассемблерный код PTX, сгенерированный ядром .cl, с помощью API драйвера CUDA. Я предпринял следующие шаги (стандартная процедура opencl): 1) Загрузить ядро ​​.cl 2) JIT скомпилировать его 3) Получите скомпилированный...
552 просмотров
schedule 19.04.2022

cuda - минимальный пример, высокое использование регистра
Рассмотрим эти 3 тривиальных минимальных ядра. Их реестр используется намного выше, чем я ожидал. Почему? А: __global__ void Kernel_A() { //empty } соответствующий ptx: ptxas info : Compiling entry function '_Z8Kernel_Av'...
1317 просмотров
schedule 04.05.2022

PTX — что такое CTA?
Я изучаю PTX и не понимаю, чем CTA (массив вычислительных потоков) отличается от блока CUDA. Это одно и то же? Мне кажется, что пока (я только в начале документа PTX) они как раз одинаковы
4399 просмотров
schedule 05.05.2022

Cuda подписал 128-битную ошибку умножения
Я думаю, что обнаружил проблему при выполнении 128-битного умножения со знаком в cuda PTX с использованием целых чисел со знаком. Вот мой пример кода: long long result_lo, result_hi; asm(" mul.lo.s64 %0, 0, -1; \n\t" // 0 * -1 = 0 "...
493 просмотров
schedule 15.05.2022

Невозможно связать объектные файлы CUDA, созданные из промежуточного представления CUBIN.
Из документации NVIDIA , когда генерируется PTX, CUBIN или FATBIN, код хоста удаляется из файла. Теперь у меня есть код хоста (main.cu) и код устройства (shared.cu). При компиляции каждого файла в *.o с использованием опции nvcc nvcc -c...
908 просмотров
schedule 03.07.2022

Некоторые встроенные функции с добавлением `_sync()` в CUDA 9; семантика одинаковая?
В CUDA 9 у nVIDIA, похоже, появилось новое понятие «совместных групп»; и по какой-то не совсем понятной мне причине __ballot() теперь (= CUDA 9) устарел в пользу __ballot_sync() . Это псевдоним или семантика изменилась? ... аналогичный вопрос...
474 просмотров
schedule 05.07.2022

Как проверить переполнение целочисленной арифметики в CUDA?
В CUDA, как я могу определить, была ли моя последняя целочисленная арифметическая операция переполнена/переполнена или нет? Могу ли я получить значение флага переполнения?
442 просмотров
schedule 13.07.2022

Можно ли поместить инструкции по сборке в код CUDA?
Я хочу использовать ассемблерный код в коде CUDA C, чтобы уменьшить затраты на выполнение, как мы делаем, используя asm в программировании на C. Является ли это возможным?
1498 просмотров
schedule 13.08.2022

примитивный тип данных в ptx
__device__ __inline__ double ld_gbl_cg(const double *addr) { double return_value; asm("ld.global.cg.f64 %0, [%1];" : "=d"(return_value) : "l"(addr)); return return_value; } Приведенный выше код взят отсюда:...
500 просмотров
schedule 09.09.2022

Буфер переменной длины PTX в разделяемой памяти
Я пытаюсь реализовать ядро ​​глобального сокращения в PTX, которое использует общую память для сокращения в блоке потока (как и все примеры CUDA C). В CUDA C on есть возможность определить массив переменной длины в разделяемой памяти с extern...
442 просмотров
schedule 27.07.2023

как найти активные смс?
Есть ли способ узнать количество свободных/активных SM? Или хотя бы прочитать значения напряжения/мощности или температуры каждого SM, по которым я могу узнать, работает он или нет? (в режиме реального времени, пока какая-то работа выполняется на...
703 просмотров
schedule 20.12.2022

Cuda PTX регистрирует объявление и использование
Я пытаюсь уменьшить количество используемых регистров в своем ядре, поэтому решил попробовать встроенный PTX. Это ядро: #define Feedback(a, b, c, d, e)...
787 просмотров
schedule 04.12.2022

Лучше понять режимы кэширования хранилища PTX
Я просматриваю таблицу режимов кэширования инструкций Store в соответствии с спецификацией PTX ISA (для PTX v2 ). Он предоставляет подробную информацию о четырех режимах кэширования: .wb : Кэшировать обратную запись для всех связанных...
291 просмотров
schedule 28.10.2022

Простое добавление векторов в Inline PTX CUDA
Я пытаюсь сделать простой код, который будет добавлять V1 (вектор) к V2 и сохранять значение в V3. Это работает в CUDA, но я не могу написать его в PTX, кто-нибудь может помочь? __global__ void addKernelPTXv4(float4 *cc, const float4 *aa, const...
282 просмотров
schedule 13.03.2023

Что содержат специальные регистры% envregN?
Я прочитал: CUDA PTX code% envreg ‹32› специальные регистры . Автор сообщения удовлетворился тем, что не пытался рассматривать PTX, происходящий из OpenCL, как обычный CUDA PTX. Но - их вопрос о %envN регистрах не получил должного ответа. Марк...
37 просмотров
schedule 23.07.2023

Явно избыточные операции в дизассемблированном микрокоде CUDA
У меня есть следующее ядро, выполняющее простое присвоение матрицы глобальной памяти in матрице глобальной памяти out : __global__ void simple_copy(float *outdata, const float *indata){ int x = blockIdx.x * TILE_DIM + threadIdx.x; int...
332 просмотров
schedule 11.11.2023