我想将 SM 的所有可用共享内存分配给一个块。我这样做是因为我不希望将多个块分配给同一个 SM。我的 GPU 卡有 64KB(共享+L1)内存。在我当前的配置中,48KB 分配给共享内存,16KB 分配给 L1。我编写了以下代码来使用所有可用的共享内存。
__global__ void foo()
{
__shared__ char array[49152];
...
}
我有两个问题:
- 如何确保所有共享内存空间都已用完?
- 我可以将“48K”增加到更高的值(不会出现任何错误或警告)。有没有人可以证明这一点?
提前致谢,
伊曼