栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

解决TensorFlow-GPU 2.x使用GPU报错:Could not load dynamic library ‘libcudnn.so.7‘

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

解决TensorFlow-GPU 2.x使用GPU报错:Could not load dynamic library ‘libcudnn.so.7‘

文章目录
    • 前言
    • 1. 问题描述
    • 2. 问题原因
    • 3. 解决过程

前言

  本篇博客主要解决在安装tensorflow-gpu之后,使用gpu训练模型时报错的问题。

1. 问题描述
软件版本号
OSUbuntu 18.04
CUDA10.1
cuDNN7.6.5
TensorFlow-GPU2.3.0
	# test whether GPU can be used
	import tensorflow as tf

	# 查看版本号
	tf.__version__
	# 查看gpu能否使用
	tf.test.is_gpu_available()
	# tf.config.list_physical_devices('GPU')

  然后报错:Could not load dynamic library 'libcudnn.so.7'; dlerror: libcudnn.so.7: cannot open shared object file: No such file or directory,根据下图可以看出tensorflow检测到了有gpu的存在,并输出了gpu的相关信息,但是缺少gpu的库文件libcudnn.so.7,导致gpu不能正确加载。

2. 问题原因

  缺少gpu的库文件,因为我使用PyTorch进行GPU训练是可以的,所以猜测是tensorflow的依赖问题,缺少相关库导致gpu加载失败。

3. 解决过程

  理论上来讲,从别的机子上copy一下这个文件,应该也是能用的,但,我的是服务器…不好弄。所以就看了看相关博客,在此做总结如下:

	# 使用conda安装cudnn
	conda install -c anaconda cudnn


  然后再次进行测试gpu能否使用:

  这就很ok了,既然通过conda安装之后解决了,说明是虚拟环境中缺少gpu的加载库。
  再回头看一下这条指令是什么意思:conda install -c anaconda cudnn
  有些包在conda默认的channels中不包含,比如cudatoolkit,cudnn等,这时只需要在conda install指令后加上-c anaconda 即可。也确实,有时候使用pip install一些库时,会导致相关的依赖没有完全安装完,不知道使用pip install cudnn能否成功,暂未测试。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/272824.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号