【MindSpore】Docker上成功使用MindSpore1.0.0的GPU版本

Nvidia-docker (cuda:10.1-base)----可使用GPU的docker容器

mindspore-gpu:1.0.0 Dokcer hub上配置好的mindspore-gpu镜像

一、 先讲述成功的流程
【1】mindspore官网GPU安装教程查看具体流程

mindspore官网安装gpu要求

系统需要ubuntu18.04,但是我的ubuntu系统版本是16.04,因为是多人共用系统,不能直接升级系统,只能通过安装docker的方式;

cat /proc/version # 使用此命令查看系统版本

查看ubuntu系统版本

【2】安装Docker—我的系统已安装docker
这里提供一篇参考文章:在ubuntu16.04上安装docker的文章

docker version # 宿主机内执行,用于查看docker是否安装成功

 

在这里插入图片描述

【3】安装nvidia-docker

需要先确认已安装了docker 和 nvidia-driver

nvidia-smi # 检查nvidia-driver 是否安装

1

查看nvidia-driver是否安装

为什么需要安装nvidia-docker

nvidia-docker是一个可以使用GPU的docker,nvidia-docker是在docker上做了一层封装, 通过nvidia-docker-plugin,然后调用到docker上, 其最终实现的还是在docker的启动命令上携带一些必要的参数。 因此在安装nvidia-docker之前,还是需要安装docker的。 docker一般都是使用基于CPU的应用,而如果是GPU的话,就需要安装特有的硬件环境, 比如需要安装nvidia driver。 所以docker容器并不直接支持Nvidia GPU。 为了解决这个问题,最早的处理办法是在容器内部,全部重新安装nvidia driver, 然后通过设置相应的设备参数来启动container,然而这种办法是很脆弱的。 因为宿主机的driver的版本必须完全匹配容器内的driver版本,这样导致docker image无法共享, 很可能本地机器的不一致导致每台机器都需要去重复操作,这很大的违背了docker的设计之初。 为了使docker image能很便利的使用Nvidia GPU,从而产生了nvidia-docker, 由它来制作nvidia driver的image,这就要求在目标机器上启动container时,确保字符设备以及驱动文件已经被挂载。 nvidia-docker-plugin是一个docker plugin,被用来帮助我们轻松部署container到GPU混合的环境下。 类似一个守护进程,发现宿主机驱动文件以及GPU 设备,并且将这些挂载到来自docker守护进程的请求中。 以此来支持docker GPU的使用。

安装nvidia-docker2.0过程 安装nvidia-docker2.0官方教程

1、ubuntu系统移除nvidia-docker 1.0

sudo docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f sudo apt-get purge nvidia-docker

2、安装依赖包

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \ sudo apt-key add - distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \ sudo tee /etc/apt/sources.list.d/nvidia-docker.list sudo apt-get update

移除旧版本nvidia-driver


3、安装nvidia-driver2.0

安装nvidia-driver2.0


4、验证nvidia-docker安装成功;
docker run --runtime=nvidia --rm nvidia/cuda:10.1-base nvidia-smi

nvidia-docker安装成功

【4】拉取mindspore-gpu:1.0.0镜像Dokcer hub上配置好的mindspore-gpu镜像

docker hub mindspore-gpu

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpjdgs.html