在没有ROOT权限的情况下在Linux上安装OpenCL(AMD SDK工具包)

时间:2012-05-24 01:32:31

标签: linux install opencl gpu amd-processor

我正在尝试在Linux上安装OpenCL(AMD),但我最后一步(安装ICD)

似乎ICD HAS 安装在/ etc / OpenCL / vendor上,但我没有root权限访问计算机。

有没有办法让OpenCL在没有安装ICD的情况下工作? (或者可以通过环境变量为ICD文件添加搜索路径?)

当ICD文件路径被硬编码时,对我们这样的人来说似乎非常不方便。

3 个答案:

答案 0 :(得分:4)

将ICD文件放在/ some / path / icd中,然后像这样导出路径:

export OPENCL_VENDOR_PATH=/some/path/icd

它至少在以前的版本中使用过。如果他们改变它我会感到惊讶。

答案 1 :(得分:2)

以下是如何在没有管理员权限的情况下执行AMD OpenCL SDK的“用户”或“本地”安装的草图。步骤9还提供了一种使用AMD OpenCL平台以及系统安装的选定平台的方法。

安装目录/local/install/path和当前的SDK版本只需要修改以适应。

  1. 下载AMD OpenCL SDK 64位。

  2. $ tar -xvzf AMD-APP-SDK-v2.8-RC-lnx64.tgz

  3. $ tar -xvzf icd-registration.tgz

  4. $ cd AMD-APP-SDK-v2.8-RC-lnx64

  5. $ mkdir /local/install/path

  6. $ cp -r lib /local/install/path

  7. $ cp -r include /local/install/path

  8. $ cp -r ../etc /local/install/path

  9. 可选:为所需的系统安装平台制作符号链接: $ ln -s /etc/OpenCL/vendors/nvidia.icd /local/install/path/etc/vendors/nvidia.icd

  10. $ export OPENCL_VENDOR_PATH=/local/install/path/etc/vendors

  11. $ export LD_LIBRARY_PATH=/local/install/path/lib/x86_64:$LD_LIBRARY_PATH

  12. $ cc -I/local/install/path/include -L/local/install/path/lib/x86_64 -lOpenCL demo.c

  13. $ ./a.out

答案 2 :(得分:1)

只是对此的更新,因为我突然发现自己有同样的问题(再次)。我不得不禁用那些显然在非root运行下崩溃的有缺陷的Mesa icd。令人沮丧的是,在列出每个平台时,API处理错误更多是一个问题,而不是带有权限或clinfo的错误。确保禁用每个平台icd以隔离哪个有问题。希望这能帮助别人。