本节详细说明一下深度学习环境配置,Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6。
python
首先安装 Python 3.6,这里使用 Anaconda 3 来安装,下载地址:https://www.anaconda.com/download/#linux,点击 Download 按钮下载便可,这里下载的是 Anaconda 3-5.1 版本,若是下载速度过慢能够选择使用清华镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/。linux
下载下来以后目录下会出现一个 Anaconda3-5.1.0-Linux-x86_64.sh 文件,而后直接执行便可安装:bash
bash Anaconda3-5.1.0-Linux-x86_64.sh
执行完毕以后按照默认设置走下来便可完成安装。app
这里默认它会安装到用户目录下,若是想全局安装,能够在这一步输入你要安装的地址:ide
Anaconda3 will now be installed into this location: /home/cqc/anaconda3 - Press ENTER to confirm the location - Press CTRL-C to abort the installation - Or specify a different location below [/home/cqc/anaconda3] >>> /usr/local/anaconda3 PREFIX=/usr/local/anaconda3
这里我指定了将其安装到 /usr/local/anaconda3 目录下,全局安装,全部用户共享,固然若是只想本用户使用的话使用默认配置便可。学习
安装完成以后添加 python3 和 pip3 的软连接:优化
sudo ln -s /usr/local/anaconda3/bin/python3 /usr/local/sbin/python3 sudo ln -s /usr/local/anaconda3/bin/pip /usr/local/sbin/pip3
这里是将软链接其添加到 /usr/local/sbin 目录下了,它默认会存在于环境变量中,所以能够直接调用。ui
固然也能够选择把 /usr/local/anaconda3/bin 目录添加到环境变量中,能够修改 ~/.bashrc 文件,添加以下内容:this
export PATH=/usr/local/anaconda3/bin${PATH:+:${PATH}}
而后执行:spa
source ~/.bashrc
便可生效,下次登陆时也会默认执行 ~/.bashrc 文件,也会生效。
接下来咱们验证下 python三、pip3 命令是否都来自 Anaconda,命令以下:
pip3 -V pip 9.0.1 from /usr/local/anaconda3/lib/python3.6/site-packages (python 3.6)
which python3 /usr/local/anaconda3/bin/python3 python3 Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19) [GCC 7.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>>
若是输入 pip3 和 python3 命令能出现如上相似结果,路径都在 /usr/local/anaconda3,就证实 Python 3 安装成功了。
首先查看一下本身的电脑须要怎样的驱动,咱们能够先到 http://www.nvidia.com/Download/index.aspx 查询下咱们须要的是怎样的驱动,这里个人显卡是 GTX 1080,因此以此为例说明,勾选好对应的配置:点击 Search,能够看到查询结果以下所示:
Version: 390.25
Release Date: 2018.1.29
Operating System: Linux 64-bit Language: English (US) File Size: 77.48 MB
这里说明咱们须要的版本是 390.25。
接下来若是咱们以前安装了驱动的话,能够从新安装一下,若是当前已经安装好了就没必要了。
若是要重装,须要首先卸载掉以前的显卡驱动:
sudo apt-get remove –purge nvidia*
运行以后 NVIDIA 的一些驱动就被卸载了。
这时候 nvidia-smi 等命令已经不能用了,这就证实显卡驱动已经被卸载了。
而后接下来添加一个 PPA 源,命令以下:
sudo add-apt-repository ppa:graphics-drivers/ppa
而后更新一下:
sudo apt-get update
随后从新安装显卡驱动:
sudo apt-get install nvidia-390
注意这里的 390 就是刚才咱们查询出来的版本,以实际查询出来的版本为准。
若是存在以前的旧版本,能够选择先卸载,以避免和新的 CUDA 版本产生冲突,在 /usr/local/cuda/bin 目录下有一个 uninstallcuda*.pl 文件,能够直接运行卸载,命令以下:
sudo ./uninstall_cuda_*.pl
这样便可将 CUDA 所有卸载。
接下来咱们再下载 CUDA 9.0,注意 TensorFlow 1.5 和 1.6 版本依然只是兼容 CUDA 9.0,没有兼容 CUDA 9.1,因此不要下载 9.1,CUDA 9.0 的下载地址是:https://developer.nvidia.com/cuda-90-download-archive,而后依次勾选好系统的版本,如图所示:
这里咱们选择 Linux-x86_64-Ubuntu-16.04-runfile 的配置,而后点击 Base Installer 部分的 Download 按钮,下载 CUDA 9.0 安装包。
对应的下载命令是:
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run
执行此命令,等待下载完成便可。
接下来执行安装,运行以下命令:
sudo bash cuda_9.0.176_384.81_linux-run
安装过程须要输入一些确认选项,过程以下:
Description The NVIDIA CUDA Toolkit provides command-line and graphical tools for building, debugging and optimizing the performance Do you accept the previously read EULA? accept/decline/quit: accept Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81? (y)es/(n)o/(q)uit: n Install the CUDA 9.0 Toolkit? (y)es/(n)o/(q)uit: y Enter Toolkit Location [ default is /usr/local/cuda-9.0 ]: Do you want to install a symbolic link at /usr/local/cuda? (y)es/(n)o/(q)uit: y Install the CUDA 9.0 Samples? (y)es/(n)o/(q)uit: y Enter CUDA Samples Location [ default is /home/cqc ]: Installing the CUDA Toolkit in /usr/local/cuda-9.0 ...
最后若是出现这样的提示,就证实 CUDA 安装好了:
Driver: Not Selected Toolkit: Installed in /usr/local/cuda-9.0
Samples: Installed in /home/cqc, but missing recommended libraries Please make sure that - PATH includes /usr/local/cuda-9.0/bin - LD_LIBRARY_PATH includes /usr/local/cuda-9.0/lib64, or, add /usr/local/cuda-9.0/lib64 to /etc/ld.so.conf and run ldconfig as root To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-9.0/bin Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-9.0/doc/pdf for detailed information on setting up CUDA. ***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 384.00 is required for CUDA 9.0 functionality to work. To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file: sudo <CudaInstaller>.run -silent -driver
而后咱们须要配置一下环境变量,更改 ~/.bashrc 文件,添加以下几行:
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} export CUDA_HOME=/usr/local/cuda
修改完毕以后执行一下使其生效:
source ~/.bashrc
这时咱们输出 CUDA_HOME、LD_LIBRARY_PATH 就能够看到对应的输出了:
echo $CUDA_HOME /usr/local/cuda echo $LD_LIBRARY_PATH /usr/local/cuda/lib64
这样就表明环境变量生效了,CUDA 安装完成。
cuDNN 的全称是 The NVIDIA CUDA® Deep Neural Network library,是专门用来对深度学习加速的库,它支持 Caffe2, MATLAB, Microsoft Cognitive Toolkit, TensorFlow, Theano 及 PyTorch 等深度学习的加速优化,目前最新版本是 cuDNN 7.1,接下来咱们来看下它的安装方式。
下载连接:https://developer.nvidia.com/rdp/cudnn-download,须要注册以后才能打开,这里咱们选择 cuDNN v7.1.1 (Feb 28, 2018), for CUDA 9.0,而后选择 cuDNN v7.1.1 Library for Linux,如图所示:
下载下来以后解压安装便可:
tar -zxvf cudnn-9.0-linux-x64-v7.1.tgz sudo cp cuda/include/cudnn.h /usr/local/cuda/include/ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ -d sudo chmod a+r /usr/local/cuda/include/cudnn.h sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
执行完如上命令以后,cuDNN 就安装好了,这时咱们能够发如今 /usr/local/cuda/include 目录下就多了 cudnn.h 头文件。
到如今为止 Python 3.六、CUDA 9.0 和 cuDNN 7.1 就已经安装好了,并且环境变量也配置好了,接下来咱们直接安装 TensorFlow 1.6 便可,TensorFlow 1.6 版本针对 CUDA 9 和 cuDNN 7 作了优化,能够预构建二进制文件。
这里须要安装的是 TensorFlow 的 GPU 版本,命令以下:
pip3 install tensorflow-gpu==1.6.0
安装完成以后验证一下:
import tensorflow
若是没有报错,那就证实所有环境配置都成功了。
以上即是 Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6 完整环境配置过程。