我的cuda版本3.1,请问怎样可以看到寄存器数目啊

我的cuda版本3.1,编译条件加了-keep,cubin还是全部乱码,请问怎样可以看到寄存器数目啊

[

cubin本来就是机器码… 3.x就不是文本格式了… 不过你可以copy到一台unix/linux的机器上, 然后用objdump -s your_cubin_file. 不过这样只能看到机器码. 你需要知道机器码对应的意思, 才知道具体使用了多少.

考虑到我们都很难读懂cubin里面的指令的意思… 有一个简单的方法, 如果你有一个cubin文件. 用profiler跑一边, profiler会告诉你你的cubin中的某个kernel使用了多少寄存器.

设置verbose ptxas output 是 (–ptxas-options=-v)

[

这个除非有源代码(使用二楼版大的–ptxas-options=-v)…才可以…或者有.ptx也可以(ptxas -v your_ptx_file). 如果只有cubin…那只能看profiler了.

同时ptxas出来的结果, 可能和实际不是准确的.