Ubuntu 是否已经通过开源驱动程序支持 OpenCL?

Ubuntu 是否已经通过开源驱动程序支持 OpenCL?

我正在运行 Ubuntu 15.10。我有 i7-4770 CPU 和 Radeon HD 8490,两者都应该有 GPU。我想尝试 OpenCL 编程,但我认为我缺少一些所需的文件,例如 cl.h。我是否可以只安装一些 Ubuntu 存储库包来让 OpenCL 与开源驱动程序一起工作?

答案1

为了让它在 Ubuntu 16.04 上运行,我必须:

  1. 下载 AMD 应用程序 sdk:http://developer.amd.com/sdks/AMDAPPSDK/Pages/default.aspx
  2. sudo apt-get install opencl-headers
  3. sudo apt-get install mesa-opencl-icd

编译程序时,可以找到所有相关文件/opt/AMDAPPSDK-3.0(假设您不更改默认位置,并且我安装的是 3.0 版本;这可能会因版本而异)。不要忘记将 include 和 lib 目录作为-L-I标志传递!

我还遇到的一个具体问题是,/opt/AMDAPPSDK-3.0/lib/x86_64/libOpenCL.so实际上是指向某个地方的软链接。但不知何故,软链接中断了(您可以通过右键单击并选择属性来检查),因此我无法编译(即使我将相关目录作为-L-I标志包含在内,仍不断出现“找不到 lOpenCL”错误)。因此,我不得不删除 x86_64 文件夹中的 libOpenCL.so,并将其替换为指向 sdk 文件夹中 libOpenCL.so 的新符号链接。然后我的程序编译并运行,没有错误。

这是一个不错的示例程序,可以测试您的 OpenCL 环境:http://www.eriksmistad.no/getting-started-with-opencl-and-gpu-computing/。我唯一需要添加到编译命令的是适当的-I-L标志。

相关内容