PyTorch environment on Ascend NPU Server
114
作者:魏文应 时间:2024-01-12
本镜像安装了 ascend pytorch v2.0.1 ,适用于以下情况:
| 条目 | 型号/版本 | 备注 |
|---|---|---|
| 硬件 | 华为昇腾Atlas800-9000服务器 | NPU910B、鲲鹏ARM64架构CPU |
| 系统 | Ubuntu20.04 | 内核必须为:Linux guest 5.4.0-26-generic |
| 物理机NPU驱动 | Ascend-hdk-910-npu-driver_23.0.rc2_linux-aarch64.run Ascend-hdk-910-npu-firmware_6.4.12.1.241.run Ascend-cann-toolkit_6.3.RC2_linux-aarch64.run Ascend-docker-runtime_5.0.RC2_linux-aarch64.run | 版本号必须严格对应 |
| Python | Python3.8.18 | 要求3.8版本 |
| 容器内CANN | Ascend-cann-toolkit_6.3.RC2_linux-aarch64.run | 相当于NPU的CUDA |
| 神经网络框架 | PyTorch2.0.1 | Ascend torch_npu适配版 |
使用下面命令进行启动:
image=nuvic/ascendpytorch:2.0.1-ubuntu20.04-arm64
container=ascendpytorch
# 使用镜像创建容器
docker run \
-itd -u 0 \
--privileged \
--ipc=host \
--net=host \
--device=/dev/davinci6 \
--device=/dev/davinci_manager \
--device=/dev/devmm_svm \
--device=/dev/hisi_hdc \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
-v /usr/local/Ascend/add-ons/:/usr/local/Ascend/add-ons/ \
-v /home/installFiles:/home/installFiles \
-v /usr/local/dcmi:/usr/local/dcmi \
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \
--name=${container} ${image} /bin/bash
然后物理机上,执行下面命令,登录容器:
docker exec -it ${container} /bin/bash
然后在容器内,执行下面命令,进行测试:
npu-smi info
打印结果如下,表明NPU驱动正常:
+------------------------------------------------------------------------------------------------+
| npu-smi 23.0.rc2 Version: 23.0.rc2 |
+---------------------------+---------------+----------------------------------------------------+
| NPU Name | Health | Power(W) Temp(C) Hugepages-Usage(page)|
| Chip | Bus-Id | AICore(%) Memory-Usage(MB) HBM-Usage(MB) |
+===========================+===============+====================================================+
| 0 910B | OK | 70.7 44 0 / 0 |
| 0 | 0000:C1:00.0 | 0 1186 / 15137 1 / 32768 |
+===========================+===============+====================================================+
| 1 910B | OK | 67.0 41 0 / 0 |
| 0 | 0000:81:00.0 | 0 1830 / 15137 1 / 32768 |
+===========================+===============+====================================================+
| 2 910B | OK | 67.6 41 0 / 0 |
| 0 | 0000:41:00.0 | 0 3225 / 15137 1 / 32768 |
+===========================+===============+====================================================+
| 3 910B | OK | 67.3 43 0 / 0 |
| 0 | 0000:01:00.0 | 0 1961 / 15039 1 / 32768 |
+===========================+===============+====================================================+
| 4 910B | OK | 70.2 43 0 / 0 |
| 0 | 0000:C2:00.0 | 0 1336 / 15137 1 / 32768 |
+===========================+===============+====================================================+
| 5 910B | OK | 68.3 40 0 / 0 |
| 0 | 0000:82:00.0 | 0 3187 / 15137 1 / 32768 |
+===========================+===============+====================================================+
| 6 910B | OK | 69.0 42 0 / 0 |
| 0 | 0000:42:00.0 | 0 2301 / 15137 1 / 32768 |
+===========================+===============+====================================================+
| 7 910B | OK | 67.7 44 0 / 0 |
| 0 | 0000:02:00.0 | 0 1387 / 15039 1 / 32768 |
+===========================+===============+====================================================+
执行下面命令,查看NPU调用,是否正常:
python /root/test.py
打印结果如下,,表明NPU被正常调用:
tensor([[1., 1., 1.],
[1., 1., 1.]], device='npu:0')
Content type
Image
Digest
sha256:c00fedb52…
Size
2.7 GB
Last updated
over 2 years ago
docker pull nuvic/ascendpytorch:2.0.1-ubuntu20.04-arm64