Docker Caffe部署

Caffe是一个清晰而高效的深度学习框架,纯粹的C++/CUDA架构,支持命令行、Python和MATLAB接口;可以在CPU和GPU直接无缝切换

Caffe的优势

  1. 上手快:模型与相应优化都是以文本形式而非代码形式给出。Caffe给出了模型的定义、最优化设置以及预训练的权重,方便立即上手。
  2. 速度快:能够运行最棒的模型与海量的数据。Caffe与cuDNN结合使用,测试AlexNet模型,在K40上处理每张图片只需要1.17ms.
  3. 模块化:方便扩展到新的任务和设置上。可以使用Caffe提供的各层类型来定义自己的模型。
  4. 开放性:公开的代码和参考模型用于再现。
  5. 社区好:可以通过BSD-2参与开发与讨论。

 

1.1下载cuda-caffe镜像

sudo docker search cuda-caffe

sudo docker pull kaixhin/cuda-caffe

1.2安装nvidia-docker

由于cuda-caffe依赖nvidia-docker工具,我们先安装nvidia-docker

wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.0-rc.3/nvidia-docker_1.0.0.rc.3-1_amd64.deb



#安装
sudo dpkg -i /tmp/nvidia-docker*.deb && rm /tmp/nvidia-docker*.deb

  1. Test nvidia-smi #启动容器
    nvidia-docker run -it kaixhin/cuda-caffe nvidia-smi

1.3执行get_cifar10.sh下载深度学习需要用到的图片

./data/cifar10/get_cifar10.sh


1.4执行./create_cifar10.sh,将会在examples中出现数据库文件./cifar10-leveldb和数据库图像均值二进制文件./mean.binaryproto

./examples/cifar10/create_cifar10.sh

 

1.5开始训练测试

./examples/cifar10/train_quick.sh


1.6查看主机GPU占用情况

nvidia-smi

 

 
当启动多个容器,进行GPU资源占用训练时,GPU的使用情况为抢占。

 

参考资料:

https://devblogs.nvidia.com/parallelforall/nvidia-docker-gpu-server-application-deployment-made-easy/

https://github.com/NVIDIA/nvidia-docker

 

posted @ 2017-01-18 11:04  Fithon  阅读(4126)  评论(0编辑  收藏  举报