快速安装CANN
安装流程
在昇腾AI处理器上搭建CANN开发&运行环境的流程如下图所示:
本节以Atlas 800 训练服务器(型号:9010)为例,指导用户在昇腾AI处理器上快速搭建CANN开发运行环境的详细流程。其他场景的安装步骤类似,详细操作的可参见《CANN软件安装指南》。
检查环境
在昇腾平台上进行开发运行环境搭建前,首先需要检查安装环境的NPU(Neural-Network Processing Unit,神经网络处理器单元,此处NPU指昇腾AI处理器)是否正常在位。
以Atlas 800 训练服务器(型号:9010)为例,执行lspci | grep d801命令检查NPU是否正常在位,如果服务器上有N路NPU,回显N行含“d801”字段,则表示NPU正常在位。
3d:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20) 3e:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20) 60:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20) 61:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20) b1:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20) b2:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20) da:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20) db:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d801 (rev 20)
准备软件包
下载NPU驱动和固件包以及配套版本的CANN开发套件包。下载本软件即表示您同意华为企业业务最终用户许可协议(EULA)的条款和条件。
其中<soc_version>代表昇腾AI处理器的型号。
安装驱动和固件
- 以root用户登录待安装环境,将驱动和固件包上传至安装环境的任意目录(如“/home/package”)。
- 创建驱动运行用户HwHiAiUser。
groupadd -g HwHiAiUser useradd -g HwHiAiUser -d /home/HwHiAiUser -m HwHiAiUser -s /bin/bash
- 增加对软件包的可执行权限。
chmod +x Ascend-hdk-<soc_version>-npu-driver_23.0.2_linux-x86-64.run chmod +x Ascend-hdk-<soc_version>-npu-firmware_7.1.0.4.220.run
- 执行如下命令,校验安装包的一致性和完整性。
./Ascend-hdk-<soc_version>-npu-driver_23.0.2_linux-x86-64.run --check ./Ascend-hdk-<soc_version>-npu-firmware_7.1.0.4.220.run --check
- 执行如下命令安装驱动。
./Ascend-hdk-<soc_version>-npu-driver_23.0.2_linux-x86-64.run --full --install-for-all
出现类似如下回显信息,说明安装成功。
Driver package installed successfully!
您还可以通过执行npu-smi info命令查看,出现类似如下信息,说明驱动加载成功。
图2 回显示例
- 执行如下命令安装固件。
./Ascend-hdk-<soc_version>-npu-firmware_7.1.0.4.220.run --full
出现类似如下回显信息,说明安装成功。
Firmware package installed successfully! Reboot now or after driver installation for the installation/upgrade to take effect
- 驱动和固件安装完成后,重启系统。
reboot
安装CANN
驱动固件安装完成后,就可以进行CANN软件包的安装了,本节以在昇腾AI处理器上安装开发套件包为例,介绍CANN软件安装的步骤。CANN开发套件包包含开发应用程序所需的库文件、开发辅助工具等,安装之后开发者可进行应用及自定义算子的开发。需要注意CANN开发套件包安装过程需要安装相关依赖,请确保安装环境能够连接外部网络,并已配置软件源,以下以root用户操作为例。
- 安装第三方依赖。
- Ubuntu系统(Debian、UOS20、Linux等系统操作一致):
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
- openEuler系统(EulerOS、CentOS、BCLinux等系统操作一致):
yum install -y gcc gcc-c++ make cmake unzip zlib-devel libffi-devel openssl-devel pciutils net-tools sqlite-devel lapack-devel gcc-gfortran
- Ubuntu系统(Debian、UOS20、Linux等系统操作一致):
- 安装Python。
可执行如下命令检查系统是否安装满足要求的python开发环境(要求python3.7.5~3.7.11、python3.8.0~3.8.11、python3.9.0~3.9.7和python3.10.0~3.10.12)。
python3 --version pip3 --version
- 安装相关依赖。
pip3 install attrs numpy decorator sympy cffi pyyaml pathlib2 psutil protobuf scipy requests absl-py wheel typing_extensions
- 安装CANN开发套件包。
- 将CANN开发套件包上传至安装环境的任意目录,执行如下命令增加对软件包的可执行权限。
chmod +x Ascend-cann-toolkit_8.0.RC2.alpha002_linux-x86_64.run
- 执行如下命令校验软件包的一致性和完整性。
./Ascend-cann-toolkit_8.0.RC2.alpha002_linux-x86_64.run --check
- 执行如下命令安装CANN开发套件包。
./Ascend-cann-toolkit_8.0.RC2.alpha002_linux-x86_64.run --install
用户需签署华为企业业务最终用户许可协议(EULA)后进入安装流程,根据回显页面输入y或Y接受协议,输入其他任意字符为拒绝协议,确认接受协议后开始安装。安装完成后,若显示如下信息,则说明软件安装成功。
[INFO] Ascend-cann-toolkit install success
- 配置CANN环境变量。
source /usr/local/Ascend/ascend-toolkit/set_env.sh
- 将CANN开发套件包上传至安装环境的任意目录,执行如下命令增加对软件包的可执行权限。
安装AI框架
本节以安装PyTorch深度学习框架为例进行介绍,开发者需要安装PyTorch框架以及昇腾提供的Ascend Extension for PyTorch插件。
以下为操作系统架构为x86_64、python版本为3.9.x的环境下,安装PyTorch 2.1.0的操作步骤,其他场景请参考《Ascend Extension for PyTorch 配置与安装》。
- 下载并安装官方2.1.0版本torch包。
# 下载官方torch包 wget https://download.pytorch.org/whl/cpu/torch-2.1.0%2Bcpu-cp39-cp39-linux_x86_64.whl # 安装官方torch包 pip3 install torch-2.1.0+cpu-cp39-cp39-linux_x86_64.whl
- 安装pytorch插件
- 下载昇腾提供的2.1.0版本的PyTorch插件包源码。
git clone -b v6.0.RC2.alpha002-pytorch2.1.0 https://gitee.com/ascend/pytorch.git cd pytorch
- 编译生成二进制安装包。
# 指定Python版本编包方式,以Python3.9为例,其他Python版本请使用 --python=3.8或--python3.10 bash ci/build.sh --python=3.9
- 安装pytorch/dist目录下生成的插件torch_npu包,如果使用非root用户安装,需要在命令后加--user。
# 请用户根据实际情况更改命令中的torch_npu包名 pip3 install --upgrade dist/torch_npu-2.1.0.post3-cp9-cp39-linux_x86_64.whl
- 下载昇腾提供的2.1.0版本的PyTorch插件包源码。
- 安装后验证。
执行如下命令,验证是否可正常导入PyTorch以及Ascend Extension for PyTorch的python库,若返回True则说明安装成功。
python3 -c "import torch;import torch_npu;print(torch_npu.npu.is_available())"
- 安装PyTorch扩展库torchvision,用于处理计算机视觉相关任务。
pip3 install torchvision==0.16.0