带有cuda 8.0的Tensorflow gpu 1.5和cuda 8.0的cudnn v7.1

带有cuda 8.0的Tensorflow gpu 1.5和cuda 8.0的cudnn v7.1,tensorflow,importerror,cudnn,Tensorflow,Importerror,Cudnn,我首先为cuda 9.0安装了cuda 9.0和cudnn,并安装了最新的tensorflow gpu 1.6。但是我注意到我的nvidia驱动程序384.111不支持cuda 9.0。因此,我卸载了cuda 9.0、cudnn和tensorflow gpu 1.5,并为cuda 8.0重新安装了tensorflow gpu 1.5、cuda8.0和cudnn v7.1。但当我导入tensorflow时,它总是显示: Traceback (most recent call last): Fi

我首先为cuda 9.0安装了cuda 9.0和cudnn,并安装了最新的tensorflow gpu 1.6。但是我注意到我的nvidia驱动程序384.111不支持cuda 9.0。因此,我卸载了cuda 9.0、cudnn和tensorflow gpu 1.5,并为cuda 8.0重新安装了tensorflow gpu 1.5、cuda8.0和cudnn v7.1。但当我导入tensorflow时,它总是显示:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory


Failed to load the native TensorFlow runtime.
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/local/lib/python2.7/dist-packages/tensorflow/_-init__.py”,第24行,在
从tensorflow.python导入*
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/_init__.py”,第49行,在
从tensorflow.python导入pywrap\u tensorflow
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/pywrap_tensorflow.py”,第74行,在
提高效率(msg)
ImportError:回溯(最近一次呼叫上次):
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/pywrap_tensorflow.py”,第58行,在
从tensorflow.python.pywrap\u tensorflow\u内部导入*
文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/pywrap\u tensorflow\u internal.py”,第28行,在
_pywrap\u tensorflow\u internal=swig\u import\u helper()
swig\u import\u helper中的文件“/usr/local/lib/python2.7/dist packages/tensorflow/python/pywrap\u tensorflow\u internal.py”,第24行
_mod=imp.load_模块(“pywrap_tensorflow_internal”,fp,路径名,描述)
ImportError:libcublas.so.9.0:无法打开共享对象文件:没有此类文件或目录
未能加载本机TensorFlow运行时。

似乎tensorflow正在试图找到libcublas.so.9.0,但我只安装了CUDA8.0。很明显,我可以将tensorflow 1.5与cuda 8.0结合使用

有人知道如何解决这个问题吗

更新:
看起来tensorflow官方没有在tensorflow 1.4之后提供使用cuda 8.0和cudnn v7.1编译的二进制文件。有人知道从哪里下载这些二进制文件吗?

我假设您正在使用pip install安装TF。(目前,版本1.6)提到CUDA®Toolkit 9.0和cuDNN v7.0是安装的要求

由于TF版本1.5,CUDA9+CUDNN7属于新要求。由于CUDA9依赖于NVIDIA driver 384+,因此会导致一系列软件更新:driver、CUDA、CUDNN、TF等。CUDA9.1需要NVIDIA driver 390或更高版本

解决问题的方法您可以遵循以下路径之一:

  • 更新nvidia驱动程序并切换回CUDA 9.0和cuDNN 7.0。您的系统上可以有多个CUDA和CUDNN版本共存
  • 安装TF 1.4,它需要CUDA 8.0和cuDNN v6.0
  • 编译。这需要投入一些时间并安装额外的软件。根据我的经验,即使这不是你的第一次,也很容易花上几个小时
  • 找到为您的系统配置编译的TF控制盘

我在安装tensorflow-gpu-1.6时遇到了同样的问题,我已经这样解决了我的问题:
步骤(1):对于tensorflow-gpu-1.6,我们可以使用cuda9.0和cudnn7,因此下载cuda9.0 debian如果您使用的是Ubuntu,您可以从这里下载cuda9.0
步骤(2):输入以下命令sudo apt get--purge remove cuda
sudo apt-get --purge remove cuda 步骤(3):sudo apt自动删除
步骤(4):现在安装下载的cuda9.0文件
第(5)步:nvidia驱动程序384对于cuda9.0是可以的,所以不用担心
步骤(6):在bashrc gedit~/.bashrc中编辑cuda9.0的路径
gedit ~/.bashrc 我做了同样的程序,比如我从我的电脑上删除了所有与cuda相关的东西,然后尝试安装cuda9.0,它确实对我起了作用

请告诉我问题是否已解决,谢谢。

“很明显,我可以将tensorflow 1.5与cuda 8.0结合使用。”您是如何做到这一点的?现在您的问题是“在哪里可以找到可能不存在的二进制文件?”。这类问题对我来说完全是离题的,我已经投票决定将其关闭,因为H384.111将与CUDA 9.0CUDA 9一起工作。9可以与所提到的384.111驱动程序一起工作。如果您转到,选择像Tesla P100这样的GPU,然后选择linux和cuda 9.0,向导实际上会建议384.111您的意思是您修复了它,它说“cuda 9.0需要nvidia驱动程序390或更高版本”? gedit ~/.bashrc