a我使用" nvcc -ccbin = icpc source / * -Iinclude -arch = sm_35 --ptxas-options = -v编译我的程序 &#34 ;.输出如下:
ptxas info : 0 bytes gmem
ptxas info : 0 bytes gmem
ptxas info : 450 bytes gmem
ptxas info : Compiling entry function '_Z21process_full_instancePiPViS1_S_' for 'sm_35'
ptxas info : Function properties for _Z21process_full_instancePiPViS1_S_
408 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads
ptxas info : Used 174 registers, 9748 bytes smem, 352 bytes cmem[0]
我认为gmem指的是全局记忆,但为什么第一行和第三行对于geme有不同的值(0对450)?
smem是共享内存,cmem怎么样?
块或SM(流处理器)的内存使用情况?块被动态分配给SM。我们可以推断出在SM上同时运行多少块?
我的GPU是K20。
答案 0 :(得分:1)
smem是共享内存,cmem怎么样?
是块还是SM(流处理器)的内存使用情况?
不,寄存器的数量是每个线程,而共享内存是每个块。
我们可以推断出会在SM上同时运行多少个块吗?
没有。由于无法确定每个块的线程数,因此无法计算每个块所需的资源。