clGetPlatformIDs 失败:<unknown error -1001>

clGetPlatformIDs failed: <unknown error -1001>

当我 运行 下面的代码

import pyopencl as cl
cl.get_platforms()

我收到错误

clGetPlatformIDs failed: <unknown error -1001>

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

我尝试了以下方法,但 none 有效:

  1. echo libnvidia-opencl.so.1 >> /etc/OpenCL/vendors/nvidia.icd 从根目录做 sudo -i 在 ssh 进入 ubuntu ec2 实例之后。 (最初这个命令不起作用,所以我删除了 nvidia.icd 文件 {rm nvidia.icd} 然后这个命令起作用了。但它没有解决上面提到的错误 1001。
  2. echo libnvidia-opencl.so.384.111 >> /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

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

找到