【问题标题】:clGetPlatformIDs failed: <unknown error -1001>clGetPlatformIDs 失败:<未知错误 -1001>
【发布时间】:2018-03-12 00:14:53
【问题描述】:

当我运行以下代码时

import pyopencl as cl
cl.get_platforms()

我得到错误

clGetPlatformIDs failed: <unknown error -1001>

我在 aws ec2 Ubuntu 16.04.4 LTS(GNU/Linux 4.4.0-116-generic x86_64)上运行 python 3.6 pyopencl 2018.1.1。

我尝试了以下方法,但它们都不起作用:

  1. echo libnvidia-opencl.so.1 &gt;&gt; /etc/OpenCL/vendors/nvidia.icd 从根目录执行sudo -i 在 ssh 进入 ubuntu ec2 实例之后。 (最初这个命令不起作用,所以我删除了 nvidia.icd 文件{rm nvidia.icd}然后这个命令起作用了。但它没有解决上面提到的错误 1001。
  2. echo libnvidia-opencl.so.384.111 &gt;&gt; /etc/OpenCL/vendors/nvidia.icd
  3. sudo ln -s /opt/intel/opencl-1.2-3.2.1.16712/etc/intel64.icd /etc/OpenCL/vendors/nvidia.icd
  4. sudo usermod -aG video your-user-name
  5. sudo ln -s /usr/share/nvidia-331/nvidia.icd /etc/OpenCL/vendors
  6. sudo ln -s /usr/share/nvidia-384/nvidia.icd /etc/OpenCL/vendors
  7. optirun myopenclprogram

【问题讨论】:

    标签: python opencl ubuntu-16.04 nvidia pyopencl


    【解决方案1】:

    在 EC2 上使用 OpenCL 的最简单方法是使用深度学习基础映像,该映像随附所有必要的驱动程序,并且已配置为与 P2 和 P3 实例类型一起使用。图片可以在https://aws.amazon.com/marketplace/pp/B077GCH38C找到。

    【讨论】:

    • 是的 +1。而不是更新 ubuntu,最好使用预装 ubuntu 16 的新映像。然后使用 conda 安装 pyopencl 即可解决。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-24
    • 1970-01-01
    • 2013-12-18
    • 2011-08-01
    • 1970-01-01
    • 2017-11-19
    • 2020-01-12
    相关资源
    最近更新 更多