最近正在做关于gpu的运行相关的工作。所以本篇文章所写的都是本人经过真实操作的,并非网络版本的copy,这个也是增加积累以及分享。
先说下我最近的目的,希望训练模型可以运行在cpu以及gpu上,由于gpu运行速度较快,所以在机器学习中,计算资源的考虑必不可少,其实我的最终目标是使用kubernetes集群来管理运行基于tensorflow的模型训练任务。由于目前k8s运行gpu还没有实际跑通,所以最近一直比较苦恼,若是有大神能指导下,感谢之至。
好的,下面来说如何在docker中运行gpu。
先简单介绍下docker的基本使用。下面我就完全以我的操作来说明。
首先下载需要的image,我是需要下载Google tensorflow的cpu版本,当然docker hub上基本都有常用的image,所以如果机器直接可访问外网,那么直接
docker pull tensorflow:tensorflow
如果无法访问外网,那么你需要通过其他方式下载,完了save镜像成为一个tar包,然后copy到你的环境中,进行load即可。下载image后,为了整个集群的各个node节点都可用,可以push到私有仓库即可。具体如下:
docker tag tensorflow:tensorflow 27.10.0.101:5000/tensorflow:v1
docker push 27.10.0.101:5000/tensorflow:v1
如上,就已经push到私有仓库了。如何创建私有仓库此处不做说明,因为网上资料已经很好了。