参考文章:Atlas 中心推理卡 23.0.RC3 NPU驱动和固件安装指南 02
文章目录
版本配套表
首先看版本配套表,比如我们推理卡是Atlas 300V pro,要看系统是不是支持Atlas 300V pro?找到合适版本的系统(内核版本也要匹配)
可以看到表中没有Atlas 300V pro,但实际上,我们通过联系技术人员,发现ubuntu20.04 5.4.0-100-generic内核是支持安装的,这点需要测试,或者跟华为技术人员确认。
(我们花费大量时间在安装ubuntu20.04系统上,在遇到内核版本不匹配时,尝试安装其他适合的内核版本,但发现切换内核版本后,网卡直接不显示了,网络无法正常工作;后来我们尝试直接安装指定内核版本的系统镜像,但由于连了外网,导致安装时自动升级了内核;后来我们断网安装,安装后连接外网之前禁用系统升级功能,问题这才得以解决)
用户必读
基础信息
服务器配置信息
我们是 Atlas 300V pro 视频解析卡
注意事项
不能混用安装方法
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527/289e2d2d
安装场景说明
我们的场景是在物理机安装驱动固件,然后拉取官方镜像进行开发推理。
实际操作
安装流程
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527/c6904c01
我们每次都是重装操作系统后安装,应该是按照驱动-->固件
的顺序安装。
确认操作系统
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527?section=j005
uname -m && cat /etc/*release
root@ky:/home/HwHiAiUser# uname -m && cat /etc/*release aarch64 DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04 DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04.4 LTS" NAME="Ubuntu" VERSION="20.04.4 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.4 LTS" VERSION_ID="20.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=focal UBUNTU_CODENAME=focal root@ky:/home/HwHiAiUser#
操作系统内核版本:
我们是用那个 ubuntu-20.04.4-live-server-arm64.iso 镜像默认断网安装的系统,内核版本5.4.0-100-generic(需要禁用系统升级,会升级内核版本的)。
获取软件包和配套表
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527?section=j006
获取设备的NPU卡芯片型号
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527?section=j006lspci -n -D | grep d500
可查询到设备信息,表明NPU卡的芯片型号为Ascend 310P软件包获取
我这边因为权限问题下载有点困难,不过貌似运维技术帮我们下好了
创建运行用户
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527?section=j007
root用户下运行:
groupadd HwHiAiUser useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash
确认安装
确认是先安装驱动,还是先安装固件
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527?section=j008
安装驱动
确认安装方式
https://support.huawei.com/enterprise/zh/doc/EDOC1100332527/51429589
基本
有三种安装方式:
- 二进制文件直接安装
- 源码编译安装
- 重构驱动包安装
因为我们已经安装了符合内核版本的操作系统,所以直接用run包(二进制文件直接安装)方式安装即可。
我们应该走的这条路线:
系统兼容性要求
环境检查
操作系统内核版本
uname -r
root@ky:/home/HwHiAiUser# uname -r 5.4.0-100-generic root@ky:/home/HwHiAiUser#
系统是否安装过软件包
lsmod | grep drv_pcie_host
无内容表示未安装过软件包。可以直接安装软件包
检测卡是否正常在位
lspci | grep d500
驱动安装过程中所需的Linux工具(略)
相关配置文件
三种方式选1,我们选择第一种以二进制文件安装(.run包安装)
安装相关基础依赖
参考文章:https://support.huawei.com/enterprise/zh/doc/EDOC1100332527/2645a51f
apt update
apt-get install -y gcc g++ make cmake zlib1g zlib1g-dev openssl libsqlite3-dev libssl-dev libffi-dev unzip pciutils net-tools libblas-dev gfortran libblas3 libopenblas-dev
安装驱动
./Ascend-hdk-310p-npu-driver_23.0.rc3_linux-aarch64.run --full
安装固件
./Ascend-hdk-310p-npu-firmware_7.0.0.5.242.run --full
安装cann相关
我这里只写根据我们系统版本执行的步骤。
安装python相关
安装python3-pip
apt install python3-pip
配置pip源(华为源)
root用户下:
mkdir ~/.pip cd ~/.pip vi pip.conf
将以下内容添加到pip.conf中:
[global] #以华为源为例,请根据实际情况进行替换。 index-url = https://mirrors.huaweicloud.com/repository/pypi/simple trusted-host = mirrors.huaweicloud.com timeout = 120
安装python库
pip3 install attrs cython numpy decorator sympy cffi pyyaml pathlib2 psutil protobuf scipy requests absl-py
安装cann
/home/HwHiAiUser
目录下:
./Ascend-cann-toolkit_7.0.0.alpha002_linux-aarch64.run --install
修改~/.bashrc
安装好cann会提示:
Please make sure that the environment variables have been configured. - To take effect for all users, you can add "source /usr/local/Ascend/ascend-toolkit/set_env.sh" to /etc/profil e. - To take effect for current user, you can exec command below: source /usr/local/Ascend/ascend-toolkit/set_env. sh or add "source /usr/local/Ascend/ascend-toolkit/set_env.sh" to ~/.bashrc.
root用户下:
vi ~/.bashrc
在最后添加:
source /usr/local/Ascend/ascend-toolkit/set_env.sh
检查cann是否安装成功
npm-smi info
能够打印下面信息就表示没问题:
重启系统后再重复上一步,没问题即可
reboot
切换到root执行,返回信息正常即可:
npm-smi info
不知道为何,在普通用户下执行上面命令是失败的(可能上面启动设置环境变量的时候只在root设置了,没有在所有用户设置):
至此,驱动、固件、cann安装成功