本节详细说明一下深度学习环境配置,Ubuntu 16.04 + Nvidia GTX 1080 + Python 3.6 + CUDA 9.0 + cuDNN 7.1 + TensorFlow 1.6。

Python 3.6

首先安装 Python 3.6,这里使用 Anaconda 3 来安装,下载地址:https://www.anaconda.com/download/#linux,点击 Download 按钮下载即可,这里下载的是 Anaconda 3-5.1 版本,如果下载速度过慢可以选择使用清华镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/。

下载下来之后目录下会出现一个 Anaconda3-5.1.0-Linux-x86_64.sh 文件,然后直接执行即可安装:

bash Anaconda3-5.1.0-Linux-x86_64.sh

执行完毕之后按照默认设置走下来即可完成安装。

这里默认它会安装到用户目录下,如果想全局安装,可以在这一步输入你要安装的地址:

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/anaconda3PREFIX=/usr/local/anaconda3

这里我指定了将其安装到 /usr/local/anaconda3 目录下,全局安装,所有用户共享,当然如果只想本用户使用的话使用默认配置即可。

安装完成之后添加 python3 和 pip3 的软链接:

sudo ln -s /usr/local/anaconda3/bin/python3 /usr/local/sbin/python3sudo ln -s /usr/local/anaconda3/bin/pip /usr/local/sbin/pip3

这里是将软连接其添加到 /usr/local/sbin 目录下了,它默认会存在于环境变量中,因此可以直接调用。

当然也可以选择把 /usr/local/anaconda3/bin 目录添加到环境变量中,可以修改 ~/.bashrc 文件,添加如下内容:

export PATH=/usr/local/anaconda3/bin${PATH:+:${PATH}}

然后执行:

source ~/.bashrc

即可生效,下次登录时也会默认执行 ~/.bashrc 文件,也会生效。

接下来我们验证下 python3、pip3 命令是否都来自 Anaconda,命令如下:

pip3 -Vpip 9.0.1 from /usr/local/anaconda3/lib/python3.6/site-packages (python 3.6)
which python3/usr/local/anaconda3/bin/python3python3Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19) [GCC 7.2.0] on linuxType "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-bitLanguage:    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 9.0

如果存在之前的旧版本,可以选择先卸载,以免和新的 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

安装过程需要输入一些确认选项,过程如下:

DescriptionThe NVIDIA CUDA Toolkit provides command-line and graphicaltools for building, debugging and optimizing the performanceDo you accept the previously read EULA?accept/decline/quit: acceptInstall NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?(y)es/(n)o/(q)uit: nInstall the CUDA 9.0 Toolkit?(y)es/(n)o/(q)uit: yEnter 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: yInstall the CUDA 9.0 Samples?(y)es/(n)o/(q)uit: yEnter CUDA Samples Location [ default is /home/cqc ]: Installing the CUDA Toolkit in /usr/local/cuda-9.0 ...

最后如果出现这样的提示,就证明 CUDA 安装好了:

Driver:   Not SelectedToolkit:  Installed in /usr/local/cuda-9.0
Samples:  Installed in /home/cqc, but missing recommended librariesPlease 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 rootTo uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-9.0/binPlease 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/cudaecho $LD_LIBRARY_PATH/usr/local/cuda/lib64

这样就代表环境变量生效了,CUDA 安装完成。

cuDNN 7.1

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.tgzsudo cp cuda/include/cudnn.h /usr/local/cuda/include/sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ -dsudo chmod a+r /usr/local/cuda/include/cudnn.hsudo chmod a+r /usr/local/cuda/lib64/libcudnn*

执行完如上命令之后,cuDNN 就安装好了,这时我们可以发现在 /usr/local/cuda/include 目录下就多了 cudnn.h 头文件。

TensorFlow 1.6

到现在为止 Python 3.6、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 完整环境配置过程。


©著作权归作者所有:来自51CTO博客作者mb5fe159f193922的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 跟繁琐的命令行说拜拜!Gerapy分布式爬虫管理框架来袭!
  2. centos 7 scp命令的使用
  3. Python 3.10 版本采纳了首个 PEP,中文翻译即将推出
  4. Python 如何移除旧的版本特性,如何迎接新的特性?
  5. 使用这个 Python 库,只需一行命令,给头像戴上口罩!
  6. 项目版本上线,小鹿获得最佳 Bug 奖!
  7. Linux常用命令有哪些?
  8. 新版本chrome 浏览器非受信https站点访问方式
  9. 开发者请注意:Python2 的最后版本将于 4 月发布,但它确实是在 1 月

随机推荐

  1. 【Android】android镜像翻转
  2. Android学习07-----事件处理(1)单击事件_
  3. Android 中文 API――android.widget合集
  4. Android中级教程之--------Android应用程
  5. Android全屏,隐藏状态栏和标题栏
  6. Android上如何正确实现程序的联网,事关WIF
  7. 经典Android系统源代码
  8. Android开发规范--编码规范/性能优化/UI
  9. Android(安卓).9.png图片的制作与使用
  10. 不要被虚张声势的 Android 忽悠了