欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

深度学习环境 Ubuntu16.04 LTS + GTX750Ti + CUDA9.0 + cudnn7.0 + python3.6.5 + tensorflow1.6搭建

程序员文章站 2022-05-27 13:30:00
...

从0搭建Ubuntu深度学习环境

Ubuntu16.04 LTS + GTX750Ti + CUDA9.0 + cudnn7.0 + python3.6.5 + tensorflow1.6

之前仅仅在本科专业时使用过redhat的环境中的一个EDA工具,所以算是个小白。

0 Ubuntu 16.04 LTS(baidu)

安装完成后执行以下语句

sudo apt-get update && sudo apt-get upgrade

1 **root权限

sudo su -
输入你的密码
passwd
输入root的密码

2 系统优化

2.1 删除libreoffice

sudo apt-get remove libreoffice-common

2.2 删除Amazon的链接

sudo apt-get remove unity webapps-common

2.3 删掉基本不用的自带软件(需要用再装)

sudo apt-get remove thunderbird totem rhythmbox empathy brasero simple-scan gnome-mahjongg aisleriot gnome-mines cheese transmission-common gnome-orca webbrowser-app gnome-sudoku  landscape-client-ui-install

sudo apt-get remove on board deja-dup

2.4 安装vim

sudo apt-get install vim

2.5 安装chrome

先下载chrome安装文件:
https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
然后进去Downloads目录,进行如下操作

sudo apt-get install libappindicator1 libindicator7
sudo dpkg -i google-chrome-stable_current_amd64.deb
sudo apt-get -f install

3 安装wps

先去WPS官网下载对应的版本: http://community.wps.cn/download/
第一步:安装wps(文件名根据实际替换)

sudo dpkg -i wps-office_10.1.0.5672~a21_amd64.deb

第二步:解决字体缺失问题

# 创建目录
sudo mkdir /usr/share/fonts/wps-office
# 将下载的字体复制到创建的目录
sudo cp -r wps_symbol_fonts.zip /usr/share/fonts/wps-office
# 进入创建的目录解压字体包
sudo unzip wps_symbol_fonts.zip
# 删除压缩文件
sudo rm -r wps_symbol_fonts.zip

打开测试,其他问题参考: https://blog.csdn.net/duxu24/article/details/52711693


4 安装GTX750Ti显卡驱动

由于默认Ubuntu系统的显卡驱动并非是Nvidia驱动,需要先安装合适的Nvidia显卡驱动才能安装CUDA,去官网http://www.geforce.com/drivers查找显卡驱动型号。

[注:] 我查出来最新的是396,但是在安装CUDA9.0时提示我的是384,所以这里折腾了下掉进了坑,不过后面测试安装390也没有问题。

如何安装:

# 添加源
sudo add-apt-repository ppa:graphics-drivers/ppa

# 安装driver nvidia-384
sudo apt-get update sudo && apt-get install nvidia-384

sudo apt-get install mesa-common-dev

sudo apt-get install freeglut3-dev

完成上述操作后,执行sudo reboot重启电脑后输入nvidia-smi可以看到如下信息

nvidia-smi

5 安装CUDA9.0

从NVIDIA官网 https://developer.nvidia.com/cuda-release-candidate-download
下载适合的CUDA版本,目前官网最新的版本是9.0,但是我非常不建议大家使用最新版本。参考下面注释

[注:] 这里可以参考Tensorflow网站,可以看到
https://www.tensorflow.org/install/install_linux#installing_with_anaconda


运行支持 GPU 的 TensorFlow 所需满足的 NVIDIA 要求
如果您要使用本指南描述的其中一种方式安装支持 GPU 的 TensorFlow,就必须在系统上安装以下 NVIDIA 软件:

CUDA® 工具包 9.0。如需了解详情,请参阅 NVIDIA 文档。请务必按照 NVIDIA 文档中的说明将相关的 CUDA 路径名附加到 LD_LIBRARY_PATH 环境变量中。

与 CUDA 工具包 9.0 相关联的 NVIDIA 驱动程序。

cuDNN v7.0。如需了解详情,请参阅 NVIDIA 文档。请务必按照 NVIDIA 文档中的说明创建 CUDA_HOME 环境变量。

CUDA 计算能力为 3.0 或更高的 GPU 卡(用于从源代码构建),以及 CUDA 计算能力为 3.5 或更高的 GPU 卡(用于安装我们的二进制文件)。如需了解支持的 GPU 卡的列表,请参阅 NVIDIA 文档。


进入下载页面后,可以选择其他版本下载,也可以根据Tensorflow的提示选择版本。我是按下面的选择的runfile文件。
Operating System: Linux
Architecture: x86_64
Distribution: Ubuntu
Version: 16.04
installer Type: runfile[local]
然后点击下载。

执行:

sudo sh cuda_9.0.103_384.59_linux.run

# 如果安装失败(提示空间不足)执行下面这条
# sudo sh cuda_8.0.61_375.26_linux.run --tmpdir=/opt/temp/

安装过程中会提示

"Install NVIDIA Accelerated Graphics Drivers for Linux - x86_64 384.40? (y)es/n(0)/(q)uit: "

由于我们已经安装了驱动,这里选择n后面按yes路径为默认即可

完成安装后需要配置环境变量:
(1)打开sudo gedit ~/.bashrc,在最后面添加两行如下:

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}

export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

(2)设置环境变量和动态链接库,打开sudo gedit /etc/profile,在文件末尾加入:

export PATH=/usr/local/cuda/bin:$PATH

(3)创建链接文件,打开sudo gedit /etc/ld.so.conf.d/cuda.conf,在文件中添加:

/usr/local/cuda/lib64

最后执行 sudo ldconfig,使上述设置立即生效。

然后开始测试CUDA
执行以下命令:

cd ~/NVIDIA_CUDA-9.0_Samples/1_Utilities/deviceQuery
make
./deviceQuery

可以看到详细信息,最后结果是Pass,则CUDA安装成功,否则就是哪里有问题(利用Bing和百度解决)。

6 安装cudnn7.0

在NIVIDA开发者官网上,找到cudnn的下载页面: https://developer.nvidia.com/rdp/cudnn-download ,选择”Download cuDNN v7.0.5 (Dec 5, 2017), for CUDA 9.0” 中的 “cuDNN v7.0.5 Library for Linux”:

下载后安装非常简单,就是解压然后拷贝到相应的系统CUDA路径下,:

tar -zxvf cudnn-8.0-linux-x64-v6.0.tgz

sudo cp cuda/include/cudnn.h /usr/local/cuda/include/

sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/

sudo chmod a+r /usr/local/cuda/include/cudnn.h

sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

7 安装Anaconda4.5.1

7.1 下载Anaconda

选择Anaconda官方网站下载,考虑到Python2.7不可或缺的地位,选择Python2.7 64-BIT版本下载,当然Python3.6 也可以。 这里我选择的是Python3.6

因为Anaconda下载较慢,这里我们玄子清华的镜像站: Anaconda 或者 Anaconda installer archive
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
https://repo.continuum.io/archive/

7.2 安装Anaconda

打开终端,输入:

bash Anaconda3-5.1.0-Linux-x86_64.sh

开始安装。 安装过程中的各种选项,选择默认即可。里面有一个会自动添加环境变量,选择yes
安装完毕后可以打开终端,输入

# find conda version
conda --version

8 安装Tensorflow

参考官方文档即可,如下:
https://www.tensorflow.org/install/install_linux#installing_with_anaconda

8.1 调用以下命令创建名为 tensorflow 的 conda 环境,以运行某个版本的 Python:

# 官方代码:conda create -n tensorflow pip python=2.7 # or python=3.6, etc.
# conda create -n tensorflow pip python=3.6

8.2 发出以下命令以** conda 环境

source activate tensorflow

8.3 发出以下命令以** conda 环境:

pip install --ignore-installed --upgrade tfBinaryURL

其中 tfBinaryURL 是 TensorFlow Python 软件包的网址。例如,以下命令将在 Python 3.4 环境中安装仅支持 CPU 的 TensorFlow 版本:

(tensorflow)$ pip install --ignore-installed --upgrade \
 https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.6.0-cp34-cp34m-linux_x86_64.whl

9 Test

从 shell 中调用 Python,如下所示:

$ source activate tensorflow
$ python

在 Python 交互式 shell 中输入以下几行简短的程序代码:

# Python
>>>import tensorflow as tf
>>>hello = tf.constant('Hello, TensorFlow!')
>>>sess = tf.Session()
这里会卡一会(主要750Ti太渣了),然后执行下一步
>>>print(sess.run(hello))

Reference

[1] https://zhuanlan.zhihu.com/p/28064776
[2] https://zhuanlan.zhihu.com/p/31430631