Docker是一个开源的应用容器引擎,让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中。通过使用Docker,可以实现MindSpore的快速部署,并与系统环境隔离。
本文档介绍如何在Ascend 910环境的Linux系统上,使用Docker方式快速安装MindSpore。
MindSpore的Docker镜像托管在Huawei SWR上。
目前容器化构建选项支持情况如下:
硬件平台 | Docker镜像仓库 | 标签 | 说明 |
---|---|---|---|
Ascend | mindspore/mindspore-ascend |
x.y.z |
已经预安装Ascend Data Center Solution 与对应的MindSpore Ascend x.y.z版本的生产环境。 |
x.y.z
对应MindSpore版本号,例如安装1.8.1版本MindSpore时,x.y.z
应写为1.8.1。
确认安装基于ARM的Ubuntu 18.04/CentOS 7.6 64位操作系统。
确认安装Docker 18.03或更高版本。
昇腾软件包提供商用版和社区版两种下载途径:
商用版下载需要申请权限,下载链接与安装方式请参考Ascend Data Center Solution 22.0.RC2安装指引文档。
社区版下载不受限制,下载链接请前往CANN社区版,选择5.1.RC2.alpha008
版本,以及在固件与驱动链接中获取对应的固件和驱动安装包,安装包的选择与安装方式请参照上述的商用版安装指引文档。
安装包默认安装路径为/usr/local/Ascend
。安装后确认当前用户有权限访问昇腾AI处理器配套软件包的安装路径,若无权限,需要root用户将当前用户添加到/usr/local/Ascend
所在的用户组。
对于Ascend
后端,可以直接使用以下命令获取最新的稳定镜像:
docker pull swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-ascend:{tag}
其中:
{tag}
对应上述表格中的标签。执行以下命令启动Docker容器实例:
docker run -it -u root --ipc=host \
--device=/dev/davinci0 \
--device=/dev/davinci1 \
--device=/dev/davinci2 \
--device=/dev/davinci3 \
--device=/dev/davinci4 \
--device=/dev/davinci5 \
--device=/dev/davinci6 \
--device=/dev/davinci7 \
--device=/dev/davinci_manager \
--device=/dev/devmm_svm \
--device=/dev/hisi_hdc \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
-v /var/log/npu/:/usr/slog \
swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-ascend:{tag} \
/bin/bash
其中:
{tag}
对应上述表格中的标签。如需使用MindInsight,需设置--network
参数为”host”模式, 例如:
docker run -it -u root --ipc=host \
--network host \
--device=/dev/davinci0 \
--device=/dev/davinci1 \
--device=/dev/davinci2 \
--device=/dev/davinci3 \
--device=/dev/davinci4 \
--device=/dev/davinci5 \
--device=/dev/davinci6 \
--device=/dev/davinci7 \
--device=/dev/davinci_manager \
--device=/dev/devmm_svm \
--device=/dev/hisi_hdc \
-v /usr/local/Ascend/driver:/usr/local/Ascend/driver \
-v /var/log/npu/:/usr/slog \
swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-ascend:{tag} \
/bin/bash
按照上述步骤进入MindSpore容器后,测试Docker容器是否正常工作,请运行下面的Python代码并检查输出:
方法一:
python -c "import mindspore;mindspore.run_check()"
如果输出:
MindSpore version: 版本号
The result of multiplication calculation is correct, MindSpore has been installed successfully!
至此,你已经成功通过Docker方式安装了MindSpore Ascend 910版本。
方法二:
import numpy as np
import mindspore as ms
import mindspore.ops as ops
ms.set_context(device_target="Ascend")
x = ms.Tensor(np.ones([1,3,3,4]).astype(np.float32))
y = ms.Tensor(np.ones([1,3,3,4]).astype(np.float32))
print(ops.add(x, y))
代码成功运行时会输出:
[[[[2. 2. 2. 2.]
[2. 2. 2. 2.]
[2. 2. 2. 2.]]
[[2. 2. 2. 2.]
[2. 2. 2. 2.]
[2. 2. 2. 2.]]
[[2. 2. 2. 2.]
[2. 2. 2. 2.]
[2. 2. 2. 2.]]]]
至此,你已经成功通过Docker方式安装了MindSpore Ascend 910版本。
验证MindInsight安装:
输入mindinsight start --port 8080
, 如提示启动status为success,则安装成功。
当需要升级MindSpore版本时:
docker pull swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-ascend:{tag}
其中:
{tag}
对应上述表格中的标签。此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。