我目前在一台装有 AMD A8-5600K APU 和 Radeon R9 270X 的机器上运行 Ubuntu 16.04。amdgpu 驱动程序还不支持我的卡,因此我不能在我的 GPU 上使用 OpenCL。但是,我看不出为什么 OpenCL 应用程序不能使用我的 CPU。
我已经安装了我能想到的每一个包 - ocl-icd-libopencl1、ocl-icd-opencl-dev等。
我编写了一个简单的应用程序来枚举可用的 OpenCL 平台,但它在调用时失败了clGetPlatformIDs()
。我错过了什么?
编辑:我按照 SE6 的回答中的建议安装了 AMD APP SDK,但尚未出现任何平台。运行strace
显示 OpenCL ICD 加载器找不到libamdocl64.so
.
进一步编辑:成功!我能够使用以下命令使其工作:
sudo ln -s '/opt/AMDAPPSDK-3.0/lib/x86_64/sdk/libamdocl64.so' \
/usr/lib/x86_64-linux-gnu/libamdocl64.so
(替换/opt
为您安装 AMD APP SDK 的路径。)
从AMD 网站安装 AMD APP SDK,您应该会看到您的 CPU 可用作 OpenCL 设备。