ubuntu16.04+GTX750ti+python3.6.5配置cuda9.0+cudnn7.05+TensorFlow-gpu1.8.0

news/2024/11/25 0:48:19/

ubuntu16.04+GTX750ti+python3.6.5配置cuda9.0+cudnn7.05+

TensorFlow-gpu1.8.0


1、首先是安装python3.6.5
    关于python3.6的安装,在前面一篇博客写过了,请直接转前一篇博客,ubuntu16.04安装python3.6.5遇到的一些坑的记录。一定要把前一篇博客最后提到的gdbm按照介绍的方法配置好,不然安装cuda的时候会报错,还要配置。
注:如果直接用系统自带的python3.5.2可能不会有这么多坑,我没试过。。

2、GTX750ti显卡驱动的安装(其它型号方法一样,只需下载对应型号的安装包即可)
先打开 关于这台计算机 看一下现在的显卡驱动:

显卡驱动

先去官网下载对应显卡型号的驱动,官网地址:https://www.nvidia.cn/Download/index.aspx?lang=cn,我直接下载750ti的驱动,如图所示:

750ti显卡驱动

点击搜索,然后下载,750ti的显卡驱动为:NVIDIA-Linux-x86_64-390.67.run

接下来先禁用系统自带的显卡驱动:

blacklist nouveau
options nouveau modeset=0

更新更改:

sudo update-initramfs -u

进入“关于这台计算机”查看如下图所示则为禁用成功(只要不再是NV117就意味着禁用成功):

禁用成功

停止 X-windows服务(如果你是遵照我的博客,到这一步,请你在其他显示设备上打开本博客,因为下面将要关掉桌面,你讲进入命令行模式):

sudo service lightdm stop

此时,桌面已被关掉,按ctrl + ALT +F1进入终端,进入刚下载的显卡驱动的目录,然后执行安装命令:

sudo sh NVIDIA-Linux-x86_64-390.67.run

按照提示一路安装,安装成功后,执行下面命令返回桌面:

sudo service lightdm restart

下面再次打开“关于这台计算机”,查看,如果如下图所示,则为安装成功(如果不如下图所示,先注销 / 重启下,再打开看看是否安装成功):

安装驱动成功

3、安装cuda-9.0
去官网下载cuda-9.0的安装包,如图所示:

cuda9.0

runfile包含的比较全,包含了显卡驱动,deb(local)应该是不包含显卡驱动的。
下载安装包:cuda_9.0.176_384.81_linux.run

进入到下载目录,执行下面的安装命令:

sudo sh cuda_9.0.176_384.81_linux.run

一大段文字一路回车下去到最后,然后问你:

Do you accept the previously read EULA? 选择yes
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81? 
因为已经安装过显卡驱动了,所以选择no
Install the CUDA 9.0 Toolkit? 选择yes
Enter Toolkit Location 直接回车默认 [ default is /usr/local/cuda-9.0 ]: 直接回车默认即可
Do you want to install a symbolic link at /usr/local/cuda?  选择yes
Install the CUDA 9.0 Samples? 问你是否安装样例,安装了吧,也占不了多少空间
Installing the CUDA Toolkit in /usr/local/cuda-9.0 ... 等待安装完成即可

你看到的是貌似提示incomplete installed,这是因为待会要把cuDNN压缩包里面的东西放入安装目录下,马上就会介绍怎么放。

下面是配置下环境,打开.bashrc文件:

sudo gedit ~/.bashrc

在打开的文件里最后添加下面两句:

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

使配置的环境生效:

sudo source ~/.bashrc


接下来去官网(如果没有账号的话,要注册一个账号并填写下问卷)下载cuDNN7.05,如下图所示:

cudnn7.05

然后解压压缩包:cudnn-9.0-linux-x64-v7.tgz

然后把cuDNN里面的一些文件拷贝到刚安装好的cuda-9.0的安装目录下,并且设置权限。命令为:

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 /usr/local/cuda/lib64/libcudnn*

可以用nvcc -V命令来查看是否安装成功:

nvcc

4、安装GPU版TensorFlow-1.8.0
安装TensorFlow倒也简单,只需一条命令即可:

sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu

这里用了清华的镜像,不然由于众所周知的原因,可能会安装的相当慢。。

下面再pycharm中写一段代码测试一波:

import tensorflow as tfa = tf.constant(1)
b = tf.constant(2)
c = tf.add(a,b)
with tf.Session() as sess:print(sess.run(c))

恶心的事发生了,直接报错,如下:

pycharm报错

而在终端中执行,竟然是完全正确的:

hello.py

经过查资料,基本可以认为是pycharm的一个bug,需要在pycharm中打开run->edit configurations->environment vairables添加

LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

如下图所示:

配置好如图所示:

再次运行,perfect:


以上就是在ubuntu16.04+gtx750ti+python3.6.5配置cuda-9.0+cuDNN7.05+TensorFlow-gpu1.8.0的详细过程,我踩了无数的坑,仅此记录下来,希望能大家避免这些坑。


http://www.ppmy.cn/news/337485.html

相关文章

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

从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 &…

数据资产目录建设之数据分类全解

01 数据治理“洗澡论” 其实他们之前做过数据一轮数据资产盘点,做了一个分类,也挂到系统上了,但是后来就没有后来了。治理做一半,等于啥也没干。 我之前开了一个玩笑,数据治理这种事情,就跟洗澡一样&…

yolov5——从未见过注释比代码还多的源码解析You Only Look Once And You get it——训练部分

目录 一:前言 二:先介绍v5源码中必须知道的一些文件(了解的可直接加入第三代码部分) ​编辑 三:训练 参数配置 模式选择 搭建网络 加载预训练和自定义模型的参数 是否需要冻结层数 定义累计梯度的次数 设置…

网上打印文件推荐哪一个软件好

在网上打印文件已然成为当下一种比较流行的趋势,很多在校的大学生,以及经常需要给孩子打印学习资料的家长通常都会选择网上打印,这和当下大家比较快节奏的工作时代有着很大的关系,人们的生活节奏变快,很多事情都想快速…

stm32和树莓派哪个好?

今天来聊一下stm32和树莓派,stm32我用了几年,树莓派我对它的理解仅限于理论层面。 自己并没有用树莓派做过产品,但是这个理论足以让大家对这两个平台有初步的了解。 很多人新手会去比较,stm32和树莓派哪个好,我该学哪…

新手怎样选择适合的3D打印机

3D打印机对于我们玩模型的人来说,真的是非常非常有帮助的,我甚至觉得,3D打印机应该和电烙铁一样,成为模友的标配。很多人会说,我不会三维建模软件,就算会用3D 打印机也白搭。确实,要想制作自己想…

stm32和树莓派哪个好?哪个入手难度更高?

今天来聊一下stm32和树莓派,stm32我用了几年,树莓派我对它的理解仅限于理论层面。 自己并没有用树莓派做过产品,但是这个理论足以让大家对这两个平台有初步的了解。 很多人新手会去比较,stm32和树莓派哪个好,我该学哪一…

1.XHTML5

1.什么是HTML5 1.HTML5 是下一代 HTML 的标准。 2.大部分现代浏览器具备某些HTML5的支持。 2.HTML5起步 1.HTML5 是 W3C 和 WHATWG(Web Hypertext Application Technology Working Group)合作的结果。 2.HTML5新特性: ①用于绘画的 canvas…