华为昇腾服务器 ubuntu20.04 Atlas中心推理卡 23.0.RC3 NPU驱动和固件安装指南 02(Atlas 300V pro)(Ascend 310P)(cann)安装流程记录
华为昇腾服务器 ubuntu20.04 Atlas中心推理卡 23.0.RC3 NPU驱动和固件安装指南 02(Atlas 300V pro)(Ascend 310P)(cann)安装流程记录
参考文章:Atlas 中心推理卡 23.0.RC3 NPU驱动和固件安装指南 02
参考文章:https://www.hiascend.com/document/detail/zh/quick-installation/23.0.RC3/quickinstg/800_3000/quickinstg_800_3000_0013.html
文章目录
版本配套表用户必读基础信息服务器配置信息
注意事项不能混用安装方法安装场景说明
实际操作安装流程确认操作系统获取软件包和配套表创建运行用户确认安装安装驱动确认安装方式基本系统兼容性要求环境检查
三种方式选1,我们选择第一种以二进制文件安装(.run包安装)安装相关基础依赖安装驱动安装固件安装cann相关安装python相关安装cann修改`~/.bashrc`检查cann是否安装成功重启系统后再重复上一步,没问题即可
版本配套表
首先看版本配套表,比如我们推理卡是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=j006 lspci -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://www.hiascend.com/document/detail/zh/quick-installation/23.0.RC3/quickinstg/800_3000/quickinstg_800_3000_0013.html
参考文章: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相关
参考文章:https://www.hiascend.com/document/detail/zh/quick-installation/23.0.RC3/quickinstg/800_3000/quickinstg_800_3000_0013.html
我这里只写根据我们系统版本执行的步骤。
安装python相关
请参考这里:https://www.hiascend.com/document/detail/zh/quick-installation/23.0.RC3/quickinstg/800_3000/quickinstg_800_3000_0013.html
安装python3-pip apt install python3-pip
配置pip源(华为源) 参考文章:https://www.hiascend.com/document/detail/zh/quick-installation/23.0.RC3/quickinstg/800_3000/quickinstg_800_3000_0049.html 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安装成功