【问题标题】:Conda, Keras, cuDNN: different versions showingConda、Keras、cuDNN:显示不同的版本
【发布时间】:2020-01-10 18:42:52
【问题描述】:

我正在使用 Anaconda(在 Ubuntu 18.04 中)并且我有一个安装了 Keras(和 tensorflow-gpu)的环境。以下是不同的版本:

  • Keras:2.2.4
  • Tensorflow-GPU:1.15.0
  • CuDNN:Cuda10.0.0 为 7.6.5
  • CudaToolKit:10.0.130

版本由 Conda 选择,但我想知道为什么当 nvidia-smi 显示我的 cuda 应该是(或者是?)10.1 时它下载了 10.0:

NVIDIA-SMI 435.21 驱动程序版本:435.21 CUDA 版本:10.1

但是,有趣的是,当我执行 nvcc --version 时:

Cuda 编译工具,9.1 版,V9.1.85

所以我的问题来了:我使用的是什么版本的 Cuda?我应该使用哪个版本的 Cuda? Anaconda 是否按环境处理 Cuda?

PS:(这不是我的问题,而是我为什么问它)

我问这个是因为我遇到了这个问题:

tensorflow/stream_executor/cuda/cuda_dnn.cc:329] 无法创建 cudnn 句柄:CUDNN_STATUS_INTERNAL_ERROR

我寻找了一个解决方案 (could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR),但我尝试的答案都没有奏效(删除文件、在 sudo 中运行等),所以我认为这是一个兼容性问题

【问题讨论】:

  • 你试过了吗:'export PATH=/usr/local/cuda-10.1/bin:/usr/local/cuda-10.1/NsightCompute-2019.1${PATH:+:${PATH}} ' 和 '导出 LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib\ ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}'
  • @Berkay 我实际上没有文件夹 /usr/local/cuda-XX
  • 我认为问题出在 CUDA 安装上。我有你提到的那个文件夹。 @FoxYou
  • @Berkay 我将尝试再次安装 CUDA(和我的驱动程序),按照您发送给我的安装后,稍后我会回复您,谢谢!

标签: python keras cudnn


【解决方案1】:

注意:虽然我不认为这个答案是解决方案,但它让我可以继续我的项目,所以目前它已经足够好了。

  1. 重新安装 Cuda 10.1(在我的情况下不是 10.2,因为 Steam 的驱动程序 440 存在问题)(检查您的 nvidia 驱动程序是什么版本,并确保为该版本安装正确的 Cuda)
  2. 安装后关注:https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post-installation-actions
  3. 使用 whereis cuda 查找系统上是否还有其他版本(在我的例子中,我有 cuda-dev-9.1,这解释了为什么 nvcc -V 显示该版本)
  4. 删除所有旧版本
  5. 通常,nvcc -V 和 nvidia-smi 应该显示相同的 Cuda 版本
  6. 如果需要,重新安装 cudnn

现在,这并不能修复错误:

无法创建 cudnn 句柄:CUDNN_STATUS_INTERNAL_ERROR

一个可行的解决方案(但仍然不是很棒)是在您的 python 文件顶部添加以下代码(我使用 Keras,但它也可以单独与 TensorFlow 一起使用):

from keras.backend.tensorflow_backend import set_session
import tensorflow as tf
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
sess = tf.Session(config=config)
set_session(sess)

而且它(显然)有效!

非常感谢 Berkay 的支持!

(从技术上讲,在添加另一个之前尝试删除旧版本,但它也可以)

【讨论】:

  • 'reinstall cudnn' - 你是说环境中的python模块还是注册开发者程序后从nvidia网站下载的独立包?
  • @ivan866 我想我必须从 Nvidia 网站重新安装 cudnn
猜你喜欢
  • 2020-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-01
  • 2021-05-27
  • 2019-07-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多