是否可以在 16.04(仅限 CPU)上安装 openCL?我尝试了许多指南,但仍然没有找到可用的盒子。如果这很重要的话,我有一个 sandy-bridge 第二代 CPU。
答案1
安装包
适用于 OpenCL 的通用 Ubuntu 软件包
基本安装
sudo apt install ocl-icd-libopencl1 sudo apt install opencl-headers sudo apt install clinfo
允许编译 OpenCL 代码的软件包(我认为是 1.2)
需要链接和编译
sudo apt install ocl-icd-opencl-dev
对于英特尔GT核心
支持在 Intel GT、IvyBridge 及更高版本上运行 openCL 的软件包
sudo apt install beignet
适用于 SandyBridge Intel CPU 以及其他可能的 CPU
下载适用于英特尔® 酷睿™ 和英特尔® 至强® 处理器的 OpenCL™ 运行时 16.1.1 文件,用于 Ubuntu*(64 位)https://software.intel.com/en-us/articles/opencl-drivers#latest_linux_SDK_release
安装将 rpm 转为 deb 的软件包
sudo apt-get install -y rpm alien libnuma1
解压下载的文件
tar -xvf opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25.tgz cd opencl_runtime_16.1.1_x64_ubuntu_6.4.0.25/rpm/
将 rpm 文件转换为 deb
fakeroot alien --to-deb opencl-1.2-base-6.4.0.25-1.x86_64.rpm fakeroot alien --to-deb opencl-1.2-intel-cpu-6.4.0.25-1.x86_64.rpm
安装 .deb 包
sudo dpkg -i opencl-1.2-base_6.4.0.25-2_amd64.deb sudo dpkg -i opencl-1.2-intel-cpu_6.4.0.25-2_amd64.deb
触摸本地配置文件
sudo touch /etc/ld.so.conf.d/intelOpenCL.conf
打开文件
sudo vim /etc/ld.so.conf.d/intelOpenCL.conf
并添加以下行
/opt/intel/opencl-1.2-6.4.0.25/lib64/clinfo
创建供应商目录并添加 intel.icd
sudo mkdir -p /etc/OpenCL/vendors sudo ln /opt/intel/opencl-1.2-6.4.0.25/etc/intel64.icd /etc/OpenCL/vendors/intel64.icd sudo ldconfig
测试是否有效
列出您的设备的命令
clinfo
下载此文件
运行此代码以确保一切正常,
tar xzvf tools-master.tar.gz cd tools-master make ./print-devices ./cl-demo 1000 10
最后应该打印出 GOOD
对于 Nvidia
安装 nvidia 驱动程序(我使用了 370),这应该包括所有运行时驱动程序
我用来整理这些内容的有用链接
https://wiki.tiker.net/OpenCLHowTo http://korniychuk.org.ua/instruction/how-to-use-opencl-on-ubuntu-16-04/ https://laanwj.github.io/2016/05/06/opencl-ubuntu1604.html https://software.intel.com/en-us/articles/opencl-drivers#latest_linux_SDK_release https://software.intel.com/en-us/forums/opencl/topic/285869 https://streamcomputing.eu/blog/2011-06-24/install-opencl-on-debianubuntu-orderly/ https://software.intel.com/en-us/forums/opencl/topic/390630 https://stackoverflow.com/questions/16977216/opencl-compile-on-linux
答案2
按照英特尔的支持网站,第二代(Sandy Bridge)Core 处理器不支持 OpenCL。
您将需要第三代(Ivy Bridge)或更新的 CPU 来使用 OpenCL 1.2,或者需要第七代(Kaby Lake)来选择将 OpenCL 2.0 与 Intel GPU 一起使用(我不确定 Linux 上可用的驱动程序目前支持什么)。
答案3
OpenCL 已打包在 Ubuntu/Debian 中,因此无需手动安装,您可以尝试安装以下软件包:
sudo apt-get install beignet-opencl-icd ocl-icd-libopencl1 clinfo
(或intel-opencl-icd
代替beignet-opencl-icd
Ubuntu 22.04+)
然后运行clinfo
以确保它检测到您的 OpenCL 平台和设备。
$ clinfo
Number of platforms 1
Platform Name Intel Gen OCL Driver
Platform Vendor Intel
Platform Version OpenCL 2.0 beignet 1.3