1. 检查系统是否安装过软件包
执行lsmod | grep drv_pcie_host命令查询系统是否安装过软件包。
- 如无内容表示未安装过软件包。可以直接安装软件包。
- 如有内容,表示安装过软件包。需要先卸载驱动包后,再安装新版本软件包。
2. 检测卡是否正常在位
可登录OS后执行命令行或通过iBMC WebUI界面检测卡是否正常在位,若执行命令时,提示没有安装lspci,可通过iBMC WebUI界面查询。
- 执行
命令,如果服务器上有N(N>0)张 卡,回显中含“d100”字段的行数为4N,则表示卡正常在位。lspci | grep d100
3. 安装合适内核
- 查当前版本
uname -r
我的版本是5.4.0-204-generic
- 查看配套表
操作系统架构 | 操作系统版本 | 操作系统内核版本 |
aarch64 | Ubuntu 20.04 | 5.4.0-26-generic |
x86_64 | Ubuntu 20.04 | 5.4.0-26-generic |
- 安装内核
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-image
返回
-
卸载 5.4.0-204-generic
apt remove linux-image-5.4.0-204-generic
选NO
-
再查
dpkg --get-selections | grep linux-image
返回
-
再卸载
apt remove linux-image-unsigned-5.4.0-204-generic
选NO
-
再查
dpkg --get-selections | grep linux-image
返回
只剩一个了,应该不会启动204版本了。
-
设置不更新该版本的内核
apt-mark hold 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-image
返回
-
再查
uname -r
返回
成功 !!!
4. 安装依赖环境
4.1 安装GCC
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
4.2 安装Miniconda3
- 下载
Intel CPUwget https://repo.anaconda.com/miniconda/Miniconda3-py39_23.9.0-0-Linux-x86_64.sh
ARM CPU
wget https://repo.anaconda.com/miniconda/Miniconda3-py39_23.9.0-0-Linux-aarch64.sh
我这里是Intel的,所以后边都以Intel为例。
-
查询
下载成功。
-
安装
bash ./Miniconda3-py39_23.9.0-0-Linux-x86_64.sh
接受条款,选yes。
选路径,默认即可,回车。
这句话是 Miniconda 安装程序在安装完成后提示你是否希望自动初始化 Conda 的环境配置。具体来说,它涉及到是否将 Conda 的初始化脚本添加到你的 Shell 配置文件(如 .bashrc 或 .zshrc)中,以便在每次打开终端时自动激活 Conda 的 base 环境。看起来选yes 没什么错。
安装完后要求关闭终端窗口,重新启动。
重新打开后并切换到root用户。
4.3 安装Python3.9.x
- 安装
pip3 install attrs pandas numpy decorator sympy cffi pyyaml pathlib2 psutil protobuf scipy requests absl-py pyyaml opencv-python setuptools -i https://pypi.tuna.tsinghua.edu.cn/simple/
返回
4.4 添加HwHiAiUser用户
该步为可选项,否则为root 用户,在执行安装程序时后边参数会不一样。
groupadd HwHiAiUser
useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash
如华为文档说明
5. 安装驱动
5.1 上传软件
上传驱动,固件, MCU(*.bin, 如下未显示)文件到特定文件夹,并切换目录到文件夹下
5.2 安装驱动
- Intel and for HwHiAiUser user
bash A300-3010-npu-driver_23.0.0_linux-x86_64.run --full
-
Intel and for root user
./A300-3010-npu-driver_23.0.0_linux-x86_64.run --full --install-username=root --install-usergroup=root --install-for-all
返回
5.3 安装固件
bash ./A300-3010-npu-firmware_7.1.0.3.220.run --full
返回
重新启动后登录并切换到root用户
npu-smi info
返回
驱动已成功安装!!!
5.4 安装MCU
- 查询NPU ID
npu-smi info -l
返回,这里为2
- 安装
npu-smi upgrade -t mcu -i 2 -f A300-3010-mcu_23.2.3.bin
返回
- 激活
npu-smi upgrade -a mcu -i 2
返回
- 确认
在生效新版本之后,等待30s,查询MCU版本号,确保升级成功。npu-smi upgrade -b mcu -i 2
返回
OK, 大功告成!!