keras上运行Tensorflow-gpu的艰难历程(最新版,更新中)
话不多说,让我们看看遇到的报错以及解决办法。
在解决问题之前,先确保我们的是否在使用tensorflow-gpu版本,代码如下
import os
from tensorflow.python.client import device_lib
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '99'
if __name__ == '__main__':print(device_lib.list_local_devices())
如过不是,那么请看您是否遇到下面1中遇到的报错情况(我就遇到了,难受)
1.首先,当然是常见的cuda+cudnn+tensorflow+keras之间的版本对应问题!!!不管遇到什么样的报错,一定要先确定版本对应(前车之鉴)。
cuda与cudnn到如下链接查询:
cuDNN Archive | NVIDIA Developer
其次,cuda和tensorflow到如下链接查询:
Build from source | TensorFlow
最后是tensorflow和keras的对应关系:
如果是tensorflow是1.x版本的:那么请参考这位博主的:tensorflow和keras版本对应关系 - 知乎
如果是tensorflow是2.x版本的,虽然网上有人说已经可以兼容了,但是我发现不行。我的tensorflow是2.2的,但是如果使用keras2.3.1,会报错!!!后面我使用keras2.4.0就可以了。
各位可以尝试提高keras版本(一点点就行,太高也报错。。。)
Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.
最离谱的是,居然说是cudnn的问题!当然遇到这种问题也可能是cpu内存不足也会这样的报错,在终端输入nvidia-smi,看gpu是否被占满了,如果是请参考这位博主的:“Failed to get convolution algorithm. This is probably because cuDNN failed to initialize”错误的解决办法_史丹利复合田的博客-CSDN博客
至于具体的tensorflow2.x和keras对应关系,我在网上未找到具体的表格。各位如果没有遇到如上的报错,可以先跳过。
2.版本问题确认之后,如果还是无法运行,我们可以进行检查问题所在
nvidia-smi
nvcc -V
1.再次确认,这里nvidia-smi的版本一定要>=nvcc- V的!如果你下载了多个cuda版本,请参考以下博主的链接(还有注意看该博客的评论):ubuntu 安装多个CUDA版本并可以随时切换_yinxingtianxia的博客-CSDN博客_安装多个cuda
2.确认tensorflow-gpu是否启用
python
>>>import tensorflow as tf
>>>tf.__version__
2.2.0
>>>tf.test.is_gpu_available()
True
看是否返回True,如果是False,那么就是这里出现了问题,并且出现了以下报错(类似的)
Could not load dynamic library 'libcudart.so.11.0' ?
很可能就是你的cudnn配置有问题,请查看配置(在终端输入):
cat
/usr/local/cuda/include/cudnn
.h |
grep
CUDNN_MAJOR -A 2
如果报错或者版本不是你下载的,可以尝试卸载cudnn,重新下载,具体卸载安装请看以下博主的(简单全面):
ubuntu18.04中安装和卸载cuDNN - 努力奋斗的阿贝拉 - 博客园
如上报错是我遇到的比较棘手的报错了(在我遇到的报错里,其他报错,我在网上都比较好找到解答的。),如果还有什么问题可以在评论区和我讨论呀。
新手上路,如果有写错的地方,还清多多指教。
参考文章:
tensorflow2.x使用cuda10.2(非常简单)_YouAreLion的博客-CSDN博客_cuda10.2 tensorflow
ubuntu 安装多个CUDA版本并可以随时切换_yinxingtianxia的博客-CSDN博客_安装多个cuda
“Failed to get convolution algorithm. This is probably because cuDNN failed to initialize”错误的解决办法_史丹利复合田的博客-CSDN博客
keras上运行Tensorflow-gpu的艰难历程(最新版,更新中)相关推荐
- 在安卓上运行 TensorFlow:让深度学习进入移动端
如果你关注我的前一篇帖子,并按照其中的内容实践,你可能已经学会了如何在 Linux 上安装一个 GPU 加速的 TensorFlow,并构建了你自己的图像分类器.老实讲,在笔记本上对图片进行分类是很花 ...
- 备注: ubt 16.04 安装 gtx 1060 --- 成功运行 tensorflow - gpu
---------------------------------------------------------------------------------------------------- ...
- 树莓派python3.6 tensorflow_树莓派上运行Tensorflow
由于学校里的一个比赛需要搭建一个机器视觉的系统,我一时兴起,想着能不能用树莓派+深度学习(tensorflow框架)来实现一下.所以就买了一块树莓派的板子,做了一些尝试,终于能在树莓派上运行tenso ...
- 如何在Hadoop上运行TensorFlow【部署】
为什么80%的码农都做不了架构师?>>> 原文链接 : https://www.tensorflow.org/deploy/hadoop 译文链接 : http://www.a ...
- 通过Anaconda在Ubuntu16.04上安装 TensorFlow(GPU版本)
一. 安装环境 Ubuntu16.04.3 LST GPU: GeForce GTX1070 Python: 3.5 CUDA Toolkit 8.0 GA1 (Sept 2016) cuDNN v6 ...
- 在Windows10上运行TensorFlow Android Demo实例
最近一直想把自己训练的模型迁移到Android手机上,但入门的话肯定是要先学会把TensorFlow的Android Demo迁移到手机上,磕磕碰碰地,走了不少弯路,现在总结一下的.如有错误,请望指正 ...
- linux上运行gfortran,linux – gfortran:在64位系统中编译32位可执行文件
我在AMD Athlon(tm)64 X2双核处理器5200×2上运行Ubuntu 12.10(64位), Linux内核3.5.0-51通用.我有GNU Fortran(Ubuntu / Linar ...
- python脚本在linux上运行的两种方式_python脚本当作Linux中的服务启动实现方法
脚本服务化目的: python 在 文本处理中有着广泛的应用,为了满足文本数据的获取,会每天运行一些爬虫抓取数据.但是网上买的服务器会不定时进行维护,服务器会被重启.这样我们的爬虫服务就无法运行.这个 ...
- TPU和GPU跑模型时间统计(持续更新中)以及TPU Research Cloud的申请
下面记录的训练时间就是所有数据开始训练到生成模型为止的时间,代码中都不包含交叉验证等策略. 已经尝试过的实验如下: 框架 数据集 代码 加速设备 平台 耗时 ResNet cifar10 TPU运行C ...
- pycharm运行时出现错误解决方法(持续更新中)
1."unindent does not match any outer indentation level" 表示没有缩进,要缩进,复制黏贴代码的话要重新敲.缩进一遍 2.pyc ...
最新文章
- 冒泡链表排序java_链表排序(冒泡、选择、插入、快排、归并、希尔、堆排序)...
- mysql workbench中删除数据表记录提示出错的问题
- ecu故障现象_【案例】柴油电喷车维修故障案例
- radio 微信小程序 点击取消_微信小程序如何实现radio单选框单击打勾和取消
- 小程序 text decode 真机无效_【移动端测试】APP自动化测试案例2:微信小程序自动化测试...
- 在 Ali Kubernetes 系统中,我们这样实践混沌工程
- js 获取当前元素的父元素的父元素的id
- 数据库笔记02:查询与统计数据
- java final 变量 好处_深入理解Java中的final关键字
- java视频教程免费下载
- python基于百度API的ORC文字识别
- 中国地图填色问题Python API(动态)
- MySQL的引擎初识
- ssm+jsp计算机毕业设计郑财学生经验分享平台的设计与实现hsk3u(程序+lw+源码+远程部署)
- Vue:vue2.0和vue3.0同时存在
- 仁义礼智信,忠孝廉耻勇
- 测试心理素质的软件,心理素质测试
- 最小生成树(MST)相关三题
- g6的minimap中的配置_g6 基本
- 文件管理学习之文件存储空间分配管理
热门文章
- Java高级技术FastDFS的学习
- 微信公众号排版指南(全)
- short 的算术运算
- sis最新ip地址2020入口一_2020最新大厂内部 PHP 高级工程师面试题汇总(一)
- 你需要TrustedInstaller提供的权限才能对此文件进行更改
- 16代表啥_16代表的爱情恋爱含义16代表什么爱情含义
- Integer[] cannot be converted to int[]
- pytest接口自动化测试框架 | 为什么要做pytest插件的二次开发
- 在linux下使用360随身wifi 2 | 李凡希的blog,360随身WiFi一、二代??无线网卡一步实现!...
- 360随身wifi3代linux驱动下载,360随身wifi3驱动-360随身wifi驱动下载 v5.3.0.5005官方版--pc6下载站...