我正在尝试分配 quadro 4000 nvidia 设备上限。以下大小的 2.0 静态共享内存块:
__shared__ char temp [128][128];
但是,在查看 Nsight 调试器时,我只能看到 64*64 单元格。其余的细胞在哪里。此外,当我查看分析器时,我可以看到共享内存列下出现 16KB(没关系。)
是什么赋予了?
Nsight Visual Studio Edition CUDA 调试器有几个选项来控制变量观察窗口中出现的表达式的评估和可视化。数组扩展的默认设置是 64。限制是为了避免限制评估大型数组的成本。
更改设置
在 NVIDIA Nsight 选项对话框中
您的用例的另一种解决方案是打开四个内存窗口之一并配置列 = 64 和类型 = 1 字节整数。如果值是文本而不是数字,您可以禁用数据并将文本设置为 ANSI 文本。