caffe-0.16 nvidia docker编译
来源:互联网 发布:淘宝上那些代购是真的 编辑:程序博客网 时间:2024/05/18 00:12
最近测试NVDIA Tesla Votal100 GPU在深度学习框架下的性能表现,由于测试频繁,考虑做个docker镜像,这样可以减少很多搭建环境的工作。记录下方法,以备查询分享。
步骤
- 物理机安装V100驱动程序及nvidia-docker
在物理机安装V100驱动主要是为了通过使用nvidia-docker将GPU资源透传给容器使用 - 开始制作
[root@bogon ~]# docker search centosNAME DESCRIPTION STARS OFFICIAL AUTOMATEDcentos The official build of CentOS. 3636 [OK]ansible/centos7-ansible Ansible on Centos7 101 [OK]jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.3.1611 x8... 83 [OK]tutum/centos Simple CentOS docker image with SSH access 33imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 30 [OK]gluster/gluster-centos Official GlusterFS Image [ CentOS-7 + Glu... 20 [OK]kinogmt/centos-ssh CentOS with SSH 17 [OK]......[root@bogon ~]# docker pull centos
centos镜像已经保存到本地,下面编译centos镜像以便支持nvidia-docker,这样生成新的镜像就可以通过nvidia-docker将GPU资源带到容器中。
- 编译镜像
参考其他网上资源
# 创建文件夹$ mkdir dockerBuild$ cd dockerBuild/# 新建Dockerfile文件$ vim Dockerfile# 输入以下内容# FROM 原DOCKER_IMAGEFROM {SOURCE_DOCKER_IMAGE_NAME}# MAINTAINER 作者MAINTAINER {your name}# needed cudaLABEL com.nvidia.volumes.needed="nvidia_driver"# cuda versionLABEL com.nvidia.cuda.version="8.0"# docker build 注意最后有个点 指的是使用当前目录下的Dockerfile进行build$ docker build -t DOCKER_IMAGE_NAME .# 运行结果 我使用的bamos/openface来编译的Sending build context to Docker daemon 2.048 kBStep 1 : FROM {DOCKER_IMAGE_NAME} ---> 62d1673065e8Step 2 : MAINTAINER {your name} ---> Running in b4dc9a88db63 ---> 7a77f65d0908Removing intermediate container b4dc9a88db63Step 3 : LABEL com.nvidia.volumes.needed "nvidia_driver" ---> Running in 126095cdc342 ---> c9035ebe54f8Removing intermediate container 126095cdc342Step 4 : LABEL com.nvidia.cuda.version "8.0" ---> Running in 12a0e5298d1e ---> 682db15bd6caRemoving intermediate container 12a0e5298d1eSuccessfully built 682db15bd6ca# 查看Label是否成功添加$ docker inspect DOCKER_IMAGE_NAME ......"Labels": { "com.nvidia.cuda.version": "8.0", "com.nvidia.volumes.needed": "nvidia_driver",}......# 使用nvidia-docker run 来运行编译好的image$ nvidia-docker run -it -d DOCKER_IMAGE_NAME /bin/bash
至此,基础环境已经完成,通过lsmod可以发现nvidia的驱动模块已经透传到容器中,但是现在缺少驱动程序、cuda、nccl,所以还不能调用显卡资源。下面的步骤就是一次安装这些程序。本次测试使用的是nvidia-diag-driver-local-repo-rhel7-384.66-1.0-1.x86_64.rpmnccl_2.0.5-2-cuda9.0_amd64.txzcuda-repo-rhel7-9-0-local-rc-9.0.103-1.x86_64.rpm依次安装之后,就可以使用GPU了
编译caffe-0.16
编译过程可以参考如下链接
http://www.aymeric.net/journal/2015/07/tutorial-install-caffe-on-centos-7/
遇到的问题基本网上都有解决办法
编译完成后,容器就创建完成,报错当前容器,导出镜像
[root@bogon log]# docker commit container_id caffe_cuda9_nccl2.0.5[root@bogon log]# docker save caffe_cuda9_nccl2.0.5 > /data/caffe_cuda9_nccl2.0.5.tar
阅读全文
0 0
- caffe-0.16 nvidia docker编译
- NVIDIA + docker + caffe/digits 配套使用
- 菜鸟跑通caffe(三)——编译NVIDIA/caffe-0.13/0.14+digist
- nvidia-docker快速迁移caffe环境(GPU+VNCserver+lxde桌面)
- Nvidia Caffe User Guide
- NVIDIA/DIGITS build Caffe
- caffe docker
- nvidia-docker学习笔记
- docker-nvidia 安装问题
- nvidia-docker安装
- ubuntu 14.04 双显卡安装NVIDIA GPU驱动+CUDA+编译配置caffe
- Elam的caffe笔记之配置篇(二):CentOS6.5编译安装NVIDIA驱动
- NVidia TensorRT 运行 Caffe 模型
- NVidia TensorRT 运行 Caffe 模型
- nvidia jetson TX2配置caffe
- nvidia jetson TX2配置caffe
- nvidia Jetson TX2 caffe配置
- nvidia jetson TX2配置caffe
- 深度学习里神奇的1*1卷积核
- php综合复习题大全(上)——基础篇
- cat命令
- C# “不能使用非固定表达式中包含的固定大小缓冲区。请尝试使用 fixed 语句”
- 生成随机数组-php
- caffe-0.16 nvidia docker编译
- 冒泡排序
- 前端埋点主要根据AID字段,做如下维度的实时统计-touch页统计指标
- 中文cookie存储失败
- 项目提交git
- 红黑树的原理
- 基于IdeaIDE的ssm整合框架的maven管理项目,利用映射自动生成dao层,pojo层,mappers层
- C++_异常问题
- struts2开发者模式的默认位置