序
记录1次 华为天宫之印服务器 NPU驱动安装;
NPU为:Atlas 300V 视频解析卡;
操作系统为:Ubuntu 20.04 TLS ;
起因
操作系统为:Ubuntu 20.04TLS; 操作系统为Ubuntu官网获取的;
系统安装为在线安装,并且安装了Desktop组件; 在安装时系统内核从
linux-image-5.4.0-26-generic 升级为了 Linux-image-5.4..0-177-generic;
然后在系统安装过程中就开启了各种报错之旅;因为驱动需要和内核版本对齐,不然会出错;
其他
以下操作均为root权限了;
su - root
内核降级
如未升级系统内容跳过此节,如升级了内核,可能下面的内容帮到你;
查看当前内核版本是否符合驱动的兼容
驱动支持表
Ubuntu 20.04 | aarch64 | 5.4.0-26-generic |
内核查询命令,如返回:5.4.0-26-generic ;基本就可以进入下一步了; 如不是,我们需要降级或者升级到次版本内核;
uname -r
安装新的内核
apt-get install linux-image-5.4.0-26-generic linux-headers-5.4.0-26-generic linux-modules-5.4.0-26-generic
安装完成后,查看系统中已经安装完成的内核;
dpkg --get-selections | grep linux
和华为技术支持沟通后得知即使驱动正确安装后,内核再次变动也会导致驱动不可用;所以需要将内核锁住,让他不在自动升级;
锁住内核
apt-mark hold linux-image-5.4.0-26-generic linux-headers-5.4.0-26-generic linux-modules-5.4.0-26-generic
再次执行命令,就会查看到 linux-image-5.4.0-26-generic 后面为hold字样;
修改启动项
找到启动启动程序的描述;
vim /boot/grub/grub.cfg
找到 “menuentry ‘Ubuntu, with Linux 5.4.0-26-generic’ --class ubuntu --class gnu-linux --class gnu --class os” 然后 复制 Ubuntu, with Linux 5.4.0-26-generic
修改启动项
# GRUB_DEFAULT=0 # 注释这行
#新增一行
GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 5.4.0-26-generic"
更新grub ;并重启计算机
update-grub
reboot
重新开机后,输入命令,查看内核 就应该安装成功了;
uname -r
安装NPU驱动包,固件包
准备工作
准备驱动、固件包
我这里采用DEB包;下载地址: 固件与驱动-昇腾社区 (hiascend.com)
下载了上传至服务器,也可以直接在服务器上下载;
准备依赖包
apt-get install -y gcc g++ make cmake zlib1g zlib1g-dev openssl libsqlite3-dev libssl-dev libffi-dev libbz2-dev libxslt1-dev unzip pciutils net-tools libblas-dev gfortran libblas3
apt-get install libgl1-mesa-glx
准备安装用户
groupadd HwHiAiUser
useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash
执行安装
#需要先安装驱动
dpkg -i Ascend-hdk-310p-npu-driver_23.0.1_linux-aarch64.deb
#才能安装固件包
dpkg -i Ascend-hdk-310p-npu-firmware_7.1.0.4.220.deb
安装完成后 会有successfully 字样;然后重启计算机
reboot
重启后,检查是否成功;
npu-smi info
返回如下内容表示成功;