安装mindspore要求真的太多了。。。。
cuda10.1 python3.7.5 必须....
开始:
1. 更换镜像
>> sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
>> sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
>> sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
>> sudo apt-get update
2. nvidia-container-toolkit安装
>> DISTRIBUTION=$(. /etc/os-release; echo $ID$VERSION_ID)
>> sudo curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
>> sudo curl -s -L https://nvidia.github.io/nvidia-docker/$DISTRIBUTION/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
>> sudo systemctl restart docker
到这里所需要的依赖就已经安装完成了,最后还有一步是需要修改docker的配置文件,使得MindSpore可以使用Docker的nvidia-container-runtime:
>> sudo vi /etc/docker/daemon.json # 修改成如下所示的配置
>> sudo cat /etc/docker/daemon.json
{
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}
root@ubuntu2004:~# systemctl daemon-reload # 重新加载配置
root@ubuntu2004:~# systemctl restart docker # 重启Docker
3. 可以直接拉镜像啦
>> sudo docker pull swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-gpu:1.2.0
4. 测试
>> sudo docker run -it -v /dev/shm:/dev/shm -v 本地路径:/home --runtime=nvidia --privileged=true swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-gpu:1.2.0 /bin/bash
root@0b44a5a66fca:/home# python mindspore_test.py
[[[[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.]]]]
如下所示是刚才在容器中用于测试的python代码:
# mindspore_test.py
import numpy as np
import mindspore.context as context
import mindspore.ops as ops
from mindspore import Tensor
context.set_context(mode=context.PYNATIVE_MODE, device_target="GPU")
x = Tensor(np.ones([1,3,3,4]).astype(np.float32))
y = Tensor(np.ones([1,3,3,4]).astype(np.float32))
print(ops.add(x, y))
我们可以看到最终是成功的运行了,说明MindSpore-GPU的Docker容器化环境部署成功。
参考地址:https://bbs.huaweicloud.com/forum/thread-137530-1-1.html