NVCC ptas = -v输出

时间:2014-10-13 17:12:26

标签: cuda

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。

1 个答案:

答案 0 :(得分:1)

  

smem是共享内存,cmem怎么样?

  • cmem 代表常量记忆
  • gmem 代表全局记忆
  • smem 代表共享内存
  • lmem 代表本地记忆
  • 堆叠框架是本地内存的一部分
  • 泄漏负载商店使用部分堆栈框架
  

是块还是SM(流处理器)的内存使用情况?

不,寄存器的数量是每个线程,而共享内存是每个块。

  

我们可以推断出会在SM上同时运行多少个块吗?

没有。由于无法确定每个块的线程数,因此无法计算每个块所需的资源。