ubuntu16.04-LTS+cuda-9.1+docker+tensorflow-gpu
简单快捷搭建深度学习平台
1、纯手动搭建环境,自己安装tensorflow。网上有很多现有教程,本人按照这些教程安装结果遇到各种各样的问题,在重装了数次系统后果断放弃。如果你喜欢自己动手,并且熟练的使用百度解决问题,可以忽略以下内容。
2、简单说一下手工安装方式:
第一步:安装nvidia显卡(这一步不是必须的,而且容易出问题,不建议)这里有两种安装方式。但是之前,切记!切记!切记!重要的事情说三遍,一定要关闭Ubuntu 16.04系统自带的开源第三方驱动管理:nouveau,这个东西和nvidia驱动不能共存,不禁掉是装不上nvidia 最新驱动的。
$sudo gedit /etc/modprobe.d/blacklist.conf
然后在这个文件的最后面加上下面两行:
blacklist nouveau
options nouveau modeset=0
然后在terminal里敲入下面的命令更新启动项
$ sudo update-initramfs -u
完成之后:reboot
如果你的平台是笔记本,并且是Intel的CPU和NVIDIA的GPU,那reboot之后是可以进入图形界面的,点击右上角的电源选项,找到“关于这台计算机”,可以看到你的CPU和当前使用的GPU的型号。
可以看到我的图形处理器是Intel的集显,接下来是安装NVIDIA的驱动。但是在此之前要确认一下nouveau是否真的被屏蔽。
$ lsmod | grep nouveau
如果没有输出则是已经成功了,如果列出了含有nouveau字样的东西,则表示失败。此时,检查自己之前的输入是否有错误,重新按之前的步骤再来一次。
百度登录NVIDIA官网,查询自己显卡对应的最新驱动,我的是Geforce- - -GTX850M,对应NVIDIA-384,命令行安装:
$ sudo apt-get install nvidia-384 nvidia-settings
安装成功后可以通过nvidia-smi命令查看当前的显卡驱动
Quadra M2000是我的显卡型号,Processes显示正在使用GPU的进程,如果Processes下没有进程也不用担心,只是表明没有使用独显,一样是安装成功了的,重启之后一般会使用独显,当然也有可能不会,但是只要有NVIDIA-SMI的内容就可以,不影响后续使用。
第二步:安装CUDA。官网下载cuda.run文件,.deb文件使用dpkg安装时会默认安装CUDA集成的NVIDIA驱动,这会覆盖你之前装好的驱动,引发一系列的问题。
$ sudo sh ------.run --override,-----代表你下载的CUDA后面那一串的东西,在是否安装NVIDIA驱动那一项选N,其他都是Y,安装完成后,可以到 /usr/local下查看,有cuda-9.1这个文件存在。或者在命令行里输入:nvcc,系统会提示你该命令是否存在。
第三步:安装cuDnn+tensorflow+配置环境。网上有很多教程,可以自己百度。
根据笔者的经验,显卡驱动和cuda的安装是最麻烦的,有一点要注意: 必须留有足够的空间,/tmp 、/、等,否则也会提示空间不足,无法安装cuda。
NVIDIA-Docker 安装Tensorflow
第一步:安装cuda。在此之前不用安装NVIDIA的驱动,如果已经安装了NVIDA的驱动,在安装cuda时,在是否安装NVIDIA驱动那一项选n即可。安装过程同上,安装成功后验证一下即可。
第二步:安装docker
如果之前安装过docker,则要先移除。
$ sudo apt-get remove docker docker-engine docker.io
然后把docker仓库加到源里。
$ sudo apt-get update
$ sudo apt-get install docker-ce
$ apt-cache madison docker-ce
跳过一大段的安装过程,输入下面的命令跑一个例子
$ sudo docker run hello-word
输出 Hello from Docker!
或者直接输入 : docker
会出现docker的一些信息和命令选项。
第三步:安装NVIDIA-Docker