我成功安装了ArrayFire,当我选择Visual Studio配置CUDA_x64时,示例helloworld正常工作。但是,当我更改为OpenCL_x64时,编译成功,但我得到如下运行错误:
/ ********************************************** *********************** /
ArrayFire Exception (Internal error:998):
In function __cdecl opencl::DeviceManager::DeviceManager(void)
In file src\backend\opencl\platform.cpp:329
OpenCL Error (-2): Device Not Available when calling clCreateContext
In function void __cdecl af::setDevice(const int)
In file src\api\cpp\device.cpp:91
/ ********************************************** *********************** /
任何答案将不胜感激。提前谢谢。
答案 0 :(得分:0)
-2也是CL_DEVICE_NOT_AVAILABLE
。您可以在Google上找到错误的名称,并找到一些网页来描述可能发生这种情况的情况;两个常见的是在较旧的芯片上使用英特尔CPU驱动程序(最新的英特尔OpenCL SDK需要SSE 4.2),或者在不可用时请求OpenCL / OpenGL互操作。