nvcc -Xptxas =-вывод v слишком запутанный

#cuda #nvcc

#cuda #nvcc

Вопрос:

Есть ли способ отформатировать вывод вывода nvcc -Xptxas=-v так, чтобы между ядрами была новая строка? Уже трудно прочитать имя ядра из вывода, например:

 ptxas info    : 0 bytes gmem
ptxas info    : Compiling entry function '_Z14dshape_U_noBigPdS_PKdS1_S1_PKi' for 'sm_20'
ptxas info    : Function properties for _Z14dshape_U_noBigPdS_PKdS1_S1_PKi
    0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info    : Used 47 registers, 80 bytes cmem[0]
ptxas info    : Compiling entry function '_Z23rhs_kernel_big_allInOnePdPKdS1_S1_S1_PKiS1_S1_S1_S1_' for 'sm_20'
ptxas info    : Function properties for _Z23rhs_kernel_big_allInOnePdPKdS1_S1_S1_PKiS1_S1_S1_S1_
    576 bytes stack frame, 896 bytes spill stores, 1676 bytes spill loads
ptxas info    : Used 63 registers, 112 bytes cmem[0], 16 bytes cmem[16]
  

Комментарии:

1. Имя ядра искажается как часть процесса компиляции c , доступно множество деманглеров имен c .

2. Но есть ли способ вставить новую строку между каждым отчетом ядра? Все они смешиваются, и их трудно отличить друг от друга.

3. Мне не известны какие-либо команды, которые вы можете передать в nvcc или ptxas, чтобы изменить форматирование этого вывода. Конечно, в среде Linux вы могли бы передать этот вывод в какую-либо структуру обработки текста, чтобы изменить этот вывод. Руководство по nvcc доступно в Интернете, включая документацию по коммутаторам, которые могут быть переданы ptxas.

4. @RobertCrovella: для меня это звучит как идеальный ответ, если вы захотите его опубликовать

Ответ №1:

Что касается имени ядра, оно искажается как часть этапа компиляции c (который происходит до выполнения ptxas). Доступно много деманглеров, таких как этот.

Что касается форматирования вывода ptxas, мне не известны какие-либо команды, которые вы можете передать nvcc или ptxas изменить форматирование этого вывода. Конечно, в среде Linux (и, вероятно, в Windows тоже) вы могли бы передать этот вывод в какую-либо структуру обработки текста, чтобы изменить его (возможно, используя pr or fmt ). Руководство по nvcc доступно в Интернете, включая документацию по коммутаторам, которые могут быть переданы ptxas.