OpenCL:NVIDIA K20m上的错误-9999

时间:2015-04-10 12:01:44

标签: opencl gpu nvidia

我通常总是在谷歌上找到一个解决方案(80%在这里),但这次不幸的是不是这样。这就是我决定创建一个帐户的原因。

我编写了一个运行在不同Intel和AMD CPU上的OpenCL代码。它也运行在AMD RADEON HD7970和NVIDIA Quadro FX 1800M上。但是,当我尝试在NVIDIA K20m上启动代码时,我得到错误-9999“clEnqueueNDRangeKernel”。

最令人不安的是,在512次迭代后发生错误(我猜512是巧合)。

我相信(但也许只是错误-11)我已经看到了这个错误但是在构建程序期间由于“clGetEventProfilingInfo”而出错。这次所有的分析都是评论。

我正在寻找有关此错误的信息 提前感谢您的回答。

平台信息:

OpenCL版本:1.1
CUDA版本:7.0.18

P.S。:确切地说,我不是这个系统的管理员可能是有用的。

2 个答案:

答案 0 :(得分:2)

为了未来Google的访问者(此错误代码的排名非常高),这是NVidia提供的特定于供应商的错误代码。

Stream HPC's list of OpenCL error codes上,代码public class MainActivity : WearableActivity { ... OnCreate(Bundle bundle) { base.OnCreate(bundle); **SetContentView(Resource.Layout.RoundMain);** // Does not return null anymore: FindViewById<Button>(Resource.Id.ButtonVgOk).LongClick += (s, e) => ButtonVgOkOnLongClick(); ... } 列出了函数-9999,其中包含以下说明:

  

非法读取或写入缓冲区

答案 1 :(得分:0)

我已经解决了这个问题。

通常,在内核中,我们可以在未分配的位置读取。在我的情况下,我使用了这个属性,以避免在内核中使用不好的无用测试。这种读取内存不足是NVIDIA K20的问题。

感谢。