我即将进入项目的下一阶段,我将计算移动到GPU。不幸的是,我在环境中设置OpenCL的成功非常糟糕。我希望我能够获得一些关于OpenCL的实现以及如何在安装时避免某些陷阱的具体方向。
我的机器: Linux Mint 17.3 带有Nvidia GTX 960M图形芯片的戴尔XPS 15 9550
一些细节: 除了本PPA中的Nvidia-352版本之外,我一直无法找到任何适用于此硬件的图形驱动程序: https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa
我尝试用其他任何一台机器。我重新安装了Mint的次数超过了我可以计算找到这一个驱动程序的次数。请记住,我必须使用此配置才能使我的机器正常工作。
我试图从他们的网站(https://developer.nvidia.com/cuda-downloads)安装Nvidia的CUDA工具包,由于某种原因,安装覆盖了我的Nvidia-352驱动程序,并再次将机器打砖。
此时我还不确定哪种实现方式是正确的。我不想尝试另一个并且发生同样的事情。
一些具体问题:
谢谢,
慢性
答案 0 :(得分:0)
免责声明:所有这些都是基于我对Ubuntu 15.10的经验,但希望Mint不是太不同。
如果您正在安装两个不同供应商的OpenCL实施,那么不,它们不应该相互覆盖。例如,我安装并运行了Nvidia,Intel CPU,POCL和Beignet(Intel GPU)平台。唯一需要注意的是,英特尔CPU运行时覆盖了libOpenCL.so*
个文件,导致clinfo
崩溃,因为它需要英特尔CPU运行时决定删除的libOpenCL.so.1。重新安装软件包ocl-icd-opencl-dev
修复此问题,您还可以使libOpenCL.so.1
符合英特尔CPU运行时留下的实际.so
文件的符号链接。
如果您尝试为同一平台安装两个版本,就像您尝试过的那样,那么您安装的最后一个版本将覆盖前一个版本。在您的情况下,请记住CUDA工具包还包括GPU驱动程序。我暂时没有使用CUDA工具包,也许只有安装工具包的选项而不是驱动程序,但由于每个工具包都需要一个最小的驱动程序版本,所以你必须选择一个适用于您可以安装的驱动程序版本的工具包版本。
在Ubuntu上,您可以使用nvidia-cuda-toolkit
个包sudo apt-get install
。我没有要求改变我的司机,希望它能为你工作。我不知道这个工具包的安装版本是什么版本。
如果您只想进行OpenCL开发,请安装适合您的nvidia-352
包,以及安装ocl-icd-opencl-dev
。该软件包安装ocl-icd-libopencl
和opencl-headers
软件包,提供头文件和libOpenCL.so(ICD加载器)。您还需要sudo apt-get install nvidia-opencl-icd-352
,因为它为Nvidia GPU提供了OpenCL运行时。如果您还想进行CUDA开发,那么您需要工具包。
作为旁注,请安装其中一个CPU运行时,例如: POCL,除了Nvidia运行时。我发现这对于检测我的内核中的错误非常有用 - 内核大部分时间都在我的Nvidia GPU上工作,但在POCL上却一直失败。这是一场竞争。
抱歉,没有最新的安装说明。但是,每个供应商提供的OpenCL运行时(Nvidia除外)的说明对我来说似乎都足够好。
这里有一些较旧的说明: