对于一个简单的 PyOpenCL 矩阵加法内核,我的 GPU 似乎允许使用 562% 的全局内存和 133% 的本地内存。这是我的脚本打印的内容:
GPU: GeForce GTX 670
Global Memory - Total: 2 GB
Global Memory - One Buffer: 3.750000 GB
Number of Global Buffers: 3
Global Memory - All Buffers: 11.250000 GB
Global Memory - Usage: 562.585844 %
Local Memory - Total: 48 KB
Local Memory - One Array: 32.000000 KB
Number of Local Arrays: 2
Local Memory - All Arrays: 64.000000 KB
Local Memory - Usage: 133.333333 %
如果我将全局内存使用量增加到远高于这一点,则会出现错误: mem object allocation failure
如果我在这一点以上增加本地内存使用,我会收到错误消息: invalid work group size
当本地或全局的内存使用超过 100% 时,为什么我的脚本不会立即失败?