玩玩“小藤”开发者套件 Atlas 200I DK A2 之环境准备
- 0. 背景
- 1. 烧录镜像
- 2. 安装依赖
- 3. 安装 Ascend-cann-toolkit 软件包
- 4. 安装PyTorch
- 5. 安装 PyTorch 插件 torch_npu
- 6. 安装APEX混合精度模块
0. 背景
总所周知,英伟达的GPU供不应求,还各种限制。华为推出了升腾AI可以提供AI算力,那就玩玩“小藤”开发者套件 Atlas 200I DK A2 学习学习。
1. 烧录镜像
这步很简单,准备一张 Micro SD 卡,和 USB 读卡器,连接到电脑上。
然后,访问 快速开始,下载制卡工具安装包,选择镜像,将镜像烧录到 Micro SD 卡就 Okay了。
2. 安装依赖
我使用的是 Ubuntu 22.04,按照这个文档,安装依赖。(不要偷懒,安装里面的命令执行就好了)
3. 安装 Ascend-cann-toolkit 软件包
访问 https://www.hiascend.com/software/cann/community,下载最新版的 Ascend-cann-toolkit 软件包,
https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/Milan-ASL/Milan-ASL%20V100R001C13SPC703/Ascend-cann-toolkit_7.0.RC1.alpha003_linux-aarch64.run
增加对软件包的可执行权限,
chmod +x 软件包名.run
使用 root 用户,执行以下命令安装软件,
./软件包名.run --install
参考连接:
- CANN社区版文档
4. 安装PyTorch
我一开始尝试安装 PyTorch 1.11.0 版本,但是执行下面命令总是报错,后来选择安装 PyTorch 2.0.1 版本是可以执行成功的。所以本文章里以安装 PyTorch 2.0.1 版本进行说明。
python3 -c "import torch;import torch_npu;print(torch_npu.npu.is_available())"
安装PyTorch环境依赖,
pip3 install pyyaml
pip3 install wheel
pip3 install typing_extensions
获取安装包,
wget https://download.pytorch.org/whl/torch-2.0.1-cp39-cp39-manylinux2014_aarch64.whl
安装PyTorch,
pip3 install torch-2.0.1-cp39-cp39-manylinux2014_aarch64.whl
5. 安装 PyTorch 插件 torch_npu
获取PyTorch插件的whl包,
wget https://gitee.com/ascend/pytorch/releases/download/v5.0.rc2-pytorch2.0.1/torch_npu-2.0.1rc1-cp39-cp39-linux_aarch64.whl
执行如下命令安装,
pip3 install torch_npu-2.0.1rc1-cp39-cp39-linux_aarch64.whl
执行如下命令,若返回True则说明安装成功。
python3 -c "import torch;import torch_npu;print(torch_npu.npu.is_available())"
安装对应框架版本的torchvision,
pip3 install torchvision==0.15.2
6. 安装APEX混合精度模块
混合精度训练是在训练时混合使用单精度(float32)与半精度(float16)数据类型,将两者结合在一起,并使用相同的超参数实现了与float32几乎相同的精度。在迁移完成、训练开始之前,基于NPU芯片的架构特性,用户需要开启混合精度,可以提升模型的性能。APEX混合精度模块是一个集优化性能、精度收敛于一身的综合优化库,可以提供不同场景下的混合精度训练支持。
由于 pep-0440,我们重新安装特定版本的 setuptools,
pip install --upgrade pip setuptools==57.5.0
安装依赖,
apt-get install -y patch build-essential libbz2-dev libreadline-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev liblzma-dev m4 dos2unix libopenblas-dev git
获取昇腾适配的APEX源码,
git clone -b master https://gitee.com/ascend/apex.git
因为我使用的是 3.9 版本,修改 scripts/build.sh
中 PY_VERSION 的版本号为 3.9,
vi scripts/build.sh
---
# PY_VERSION='3.7'
PY_VERSION='3.9'
---
进入昇腾适配的APEX源码目录,执行命令编译生成二进制安装包,
cd apex
bash scripts/build.sh
执行如下命令安装,
pip3 install apex/dist/apex-0.1_ascend-cp39-cp39-linux_aarch64.whl
完结!