我正在尝试为我的CUDA程序中的每个内核获取每个线程的寄存器数量。这将帮助我使用CUDA占用计算器(http://developer.download.nvidia.com/compute/cuda/CUDA_Occupancy_calculator.xls)来确定我的程序中GPU的最高占用率。
但是,我使用-cubin标志生成了.cubin文件但是我无法在vim / othertexteditors中读取它,正如NVIDIA建议的那样(http://forums.nvidia.com/index.php?showtopic= 31279)。有谁知道如何阅读它?
由于
答案 0 :(得分:4)
最简单的解决方案是将-Xptxas -v
传递给nvcc
,如此
$ nvcc -Xptxas -v foo.cu
ptxas info : Compiling entry function '_Z9my_kernelPfS_f' for 'sm_10'
ptxas info : Used 2 registers, 20+16 bytes smem
或者,您可以使用cudaFuncGetAttributes
API函数在运行时获取必要的值。