由于 OpenVINO 2021 版本在调用 IECore 时会出现 Segmentation fault 的问题,因此需要将其升级为 2022 版本的。
1. 卸载原来版本的 OpenVINO
进入OpenVINO的卸载目录,通常在 /opt/intel 文件夹下,
cd /opt/intel/openvino_2021/openvino_toolkit_uninstaller
之后执行卸载程序,一路next即可
sudo ./uninstall_GUI.sh
之后将 ~/.bashrc 中原本的 source 那行注释掉
vim ~/.bashrc
注释以下这行
#source /opt/intel/openvino_2021/bin/setupvars.sh
至此,旧版本的 OpenVINO 就算卸载完成了
2.下载并配置 2022 版本的 OpenVINO
下载网址:这个
如图所示,选择相应的选项,并点击“下载归档文件”
之后将归档文件解压,进入文件夹。如图所示
之后执行以下命令,将setupvars.sh加入到.bashrc中
echo `pwd`/setupvars.sh >> ~/.bashrc
进入 install_dependencies 目录,执行以下命令,安装所需依赖和显卡驱动
sudo -E ./install_openvino_dependencies.sh
sudo -E ./install_NEO_OCL_driver.sh
由于该版本 OpenVINO 没有自带 OpenCV,因此需要自行安装。安装步骤不再赘述。
3.配置GPU
添加软件包仓库,并安装需要的工具
sudo apt-get install -y gpg-agent wget
wget -qO - https://repositories.intel.com/graphics/intel-graphics.key |
sudo apt-key add -
sudo apt-add-repository \
'deb [arch=amd64] https://repositories.intel.com/graphics/ubuntu focal main'
sudo apt-get install -y gpg-agent
sudo apt-get install -y wget
sudo apt-get update
设置权限,将当前用户加入到指定用户组
sudo gpasswd -a ${USER} render
newgrp render
可通过以下命令验证是否加入。若列出了用户名,则表示当前用户成功加入
(我的用户名为 oem)
stat -c "%G" /dev/dri/render*
groups ${USER}
4. 验证 GPU 加速是否配置成功
任意下载一个 IR 模型(OpenVINO 推理专用模型,包含.xml和.bin两个文件。可以在 OpenVINO 的 GitHub上下载,也可以通过onnx模型转换)
编写一段以下 Python 代码:
#vino.py
from openvino.inference_engine import IECore
ie = IECore()
net = ie.read_network("model/yolox.xml")
model = ie.load_network(network=net, device_name='GPU')
执行这个脚本:
python3 vino.py
可以观察到 NUC 的风扇转速会明显加快,程序正常结束
5. 新机安装注意事项
若是给 NUC 第一次装 OpenVINO,则首先需要更新和升级系统:
sudo apt update
sudo apt upgrade
执行完成后重启,进入设置-关于界面。可以看到 图形显示设备为 Intel 核显,且/dev文件夹下存在 dri/文件夹。 之后,才能继续进行步骤2至步骤4安装OpenVINO。