查看原文
其他

在ubuntu上配置tensorflow 1.7+CUDA踩过的坑

gloomyfish OpenCV学堂 2019-03-29

在ubuntu上配置tensorflow 1.7+CUDA踩过的坑

tensorflow1.6+CUDA9.0+cuDNN7.0整个环境在windows下正常工作。因为需要就要把项目整到ubuntu上面跑测试,于是就调到坑里面去了,先说一下版本

  • ubuntu 14 64位

  • python3.4

  • tensorflow1.7 GPU

网上查了一下说tensorflow1.7支持CUDA9.0,于是就下载了CUDA9.0开始安装,但是死活装不上,不管是下载local还是network的installer,总是报错,查了一下发现是没有装驱动于是下载384的驱动,安装好了之后,装到最后又挂了,根据抛出的错误找到英伟达的论坛,里面的官方回答是CUDA9.0与CUDA9.1必须安装387.x的驱动,于是有装上,在终端执行下面命令行:

终于把CUDA装好了,然后下载cuDNN7.0,通过下面命令安装即可,(注意顺序很重要)

  • sudo dpkg -i libcudnn77.0.3.11-1+cuda9.0amd64.deb

  • sudo dpkg -i libcudnn7-dev7.0.3.11-1+cuda9.0amd64.deb

  • sudo dpkg -i libcudnn7-doc7.0.3.11-1+cuda9.0amd64.deb

安装好了之后CUDA9.0+cuDNN7.0就在ubuntu14上安装好了。可以支持tensorflow 1.7的代码运行与测试了。但是当时第一次配置的时候,我以为tensorflow1.7官方release支持CUDA9.1,所以刚开始装了CUDA9.1,然后就悲剧了,各种命令卸载,最终直接暴力删文件夹,再命令autoremove终于把CUDA9.1干掉了。由于是第一次整ubuntu的配置,各种查资料查命令,掉了好几次坑,总结如下:

  • tensorflow 1.6/tensorflow1.7支持CUDA9.0+cuDNN7.0

  • 安装CUDA失败,记得首先检查驱动安装以及驱动版本号,CUDA9.0对应的驱动387.x

  • 卸载CUDA,一定要暴力,不然没法玩!

  • 在安装tensorflow之前,一定记得检查一下python版本,把默认python设置为python3.x

常见错误:

错误:ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory 

问题:

找不到cuda9.0的版本。 

原因:

是因为装了不匹配的cuda9.1的版本,所以只有卸载重装。

ERROR: 

You appear to be running an X server; please exit X before installing. For further details, please see the section INSTALLING THE NVIDIA DRIVER in the README available on the Linux driver download page at www.nvidia.com

问题与原因:

没有关闭X-Server,必须关闭,然后切换到命令行运行方式下,在图形界面下会一直有这个问题!坑死人!

使用tensorflow GPU支持的时候,多个GPU通过制定使用一个GPU运行时候,尽量要通过设置soft的方式执行,不然在复杂的操作中容易掉坑里面去,soft的方式如下:

  1. log_device_placement = True

  2. config = tf.ConfigProto(log_device_placement=log_device_placement)

  3. with tf.Session(config=config) as sess:

  4.    # do something

  5.    # ops

硬来的方式如下:

  1. with tf.device('/gpu:0'):

  2.    a = tf.placeholder(tf.float32, [10000, 10000])

  3.    b = tf.placeholder(tf.float32, [10000, 10000])

  4.    # Compute A^n and B^n and store results in c1

  5.    c1.append(matpow(a, n))

  6.    c1.append(matpow(b, n))

设置好GPU支持,就可以在ubuntu下开始运行程序测试了。最后上一张图看看运行时候的效果:



NVIDIA cuda下载地址

  • https://developer.nvidia.com/accelerated-computing-toolkit

  • https://developer.nvidia.com/cudnn

  • https://developer.nvidia.com/cuda-downloads


求木之长者,必固其根本;

欲流之远者,必浚其泉源!


关注【OpenCV学堂】

长按或者扫码下面二维码即可关注

欢迎关注一个只分享干货的公众号!

少一丝烦躁,多一份努力!


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存