我在尝试启动 CUDA 内核(通过 PyCUDA)时遇到资源不足的错误,我想知道是否可以让系统告诉我我缺少哪个资源。显然系统知道什么资源已经耗尽,我也想查询一下。
我使用了占用计算器,一切似乎都还不错,所以要么没有覆盖一个角落案例,要么我用错了。我知道这不是寄存器(这似乎是通常的罪魁祸首),因为我使用的是 <= 63,但它仍然失败,在 CC 2.1 设备上出现 1x1x1 块和 1x1 网格。
谢谢你的帮助。我在 NVidia 板上发布了一个帖子:
http://forums.nvidia.com/index.php?showtopic=206261&st=0
但没有得到任何回应。如果答案是“您不能向系统询问该信息”,那也很高兴知道(有点……;)。
编辑:
我见过的寄存器使用最多的是 63。编辑上面的内容以反映这一点。