【tensorflow-2.x-gpu 】 windows10下测试tensorflow_gpu 2.x 与cudn对应关系

【tensorflow-2.x-gpu 】 windows10下测试tensorflow_gpu 2.x 与cudn对应关系

1.背景

关于配置tensorflow-2.x gpu环境,参考博客:
python3配置tensorflow-2.x gpu环境(2)
https://blog.csdn.net/jn10010537/article/details/113791239

由于最近cuda编译VPF硬解码需要,将cuda10.0卸载掉,重新安装了:cuda10.2以及cudnn7.6.5。

测试环境

python3.7
windows10 专业版

2.安装cuda框架

CUDA(Compute Unified Device Architecture)是一种用于GPU通用计算的并行计算平台和编程模型。它以C语言为基础,并多C语言进行了扩展,能够在显卡芯片上执行程序。
安装包cuda_10.2.89_441.22_win10.exe,自定义安装位置:

development开发包 D:\D03_GeneralDevelop\D03_01_nvidia\cuda\install\development
documentation文档 D:\D03_GeneralDevelop\D03_01_nvidia\cuda\install\documentation
samples示例 D:\D03_GeneralDevelop\D03_01_nvidia\cuda\install\samples

如下图1:在这里插入图片描述

3.安装cuDNN

CUDA提供了一个深度神经网络的GPU加速库cuDNN(CUDA Deep Neural Network),完成了对卷积、池化、归一化和激活函数层等标准操作的快速实现。
安装包:cudnn-10.2-windows10-x64-v7.6.5.32.7z
解压后将bin、include、lib三个文件夹拷贝至cuDNN文件夹,即如下路径:
D:\D03_GeneralDevelop\D03_01_nvidia\cudnn\cuDNN

如下图2:在这里插入图片描述
-3、将cuda、cuDNN添加至系统环境变量
将cuda、cuDNN安装目录下的如下文件夹添加至系统环境变量:

1 D:\D03_GeneralDevelop\D03_01_nvidia\cuda\install\development\bin 图3
2 D:\D03_GeneralDevelop\D03_01_nvidia\cuda\install\development\extras\CUPTI\lib64 图4
3 D:\D03_GeneralDevelop\D03_01_nvidia\cuda\install\development\include 图5
4 D:\D03_GeneralDevelop\D03_01_nvidia\cudnn\cuDNN\bin 图6

图3:
在这里插入图片描述

图4
在这里插入图片描述

图5在这里插入图片描述

图6
在这里插入图片描述

添加至系统环境后,如下图7:
在这里插入图片描述

4.安装tensorflow-gpu

安装tensorflow-gpu==2.2.0

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==2.2.0

安装后查看安装的三方包如下:
在这里插入图片描述

查看tensorflow是否运行了GPU硬件:

import tensorflow as tf 
print(tf.__version__ )     # 2.2.0 
tf.test.is_gpu_available() # False

发现tensorflow的gpu没有运行上,如下图:
在这里插入图片描述
如上图,原因是:cuda_10.2.89_441.22_win10.exe安装后的在
D:\D03_GeneralDevelop\D03_01_nvidia\cuda\install\development\bin目录下是cudart64_102.dll文件!
如下图
在这里插入图片描述
结论是cuda_10.2.89_441.22_win10.exe与tensorflow-gpu 2.2.0不匹配,需要 ‘cudart64_101.dll’,即cuda10.1;

经过测试cuda_10.2.89_441.22_win10.exe与tensorflow-gpu 2.3.0也同样不匹配,需要 ‘cudart64_101.dll’,即cuda10.1;

经过测试cuda_10.2.89_441.22_win10.exe与tensorflow-gpu 2.3.1也同样不匹配,需要 ‘cudart64_101.dll’,即cuda10.1;

经过测试cuda_10.2.89_441.22_win10.exe与tensorflow-gpu 2.3.2也同样不匹配,需要 ‘cudart64_101.dll’,即cuda10.1;

经过测试cuda_10.2.89_441.22_win10.exe与tensorflow-gpu 2.4.0也同样不匹配,需要 ‘cudart64_110.dll’,即cuda11.0;

经过测试cuda_10.2.89_441.22_win10.exe与tensorflow-gpu 2.4.0rc0也同样不匹配,需要 ‘cudart64_110.dll’,即cuda11.0;

5.总结

-5.1 测试的意义
似乎这种测试很没有意义,
但是如果你在研究VPF,即VideoProcessingFramework,那么就有意义了!
(在windows10下,安装cuda10.0后,编译VPF报错,具体报错这里不提了。)
同时本博客,也详细说明了cuda与tensorflow-gpu安装配置的大致过程,也是有一点意义的。

参考博客:
【tensorflow-2.x-gpu 】python3配置tensorflow-2.x gpu环境(2)
https://blog.csdn.net/jn10010537/article/details/113791239

提到的 Windows-GPU构建配置,进行配置cuda、cudnn、tensorflow-gpu;

最终建议你,在windows10下安装cuda10.1版本,这个版本能同时兼顾tensorflow-gpu和VPF的使用。

-5.2 安装了cuda10.1,tensorflow-gpu2.3.0
如下是我重新安装cuda,cudnn的简述:
在这里插入图片描述

安装tensorflow2.3.0,安装后查看三方包:在这里插入图片描述
查看tensorflow是否运行了GPU:

import tensorflow as tf 
print(tf.__version__ )     # 2.2.0 
tf.test.is_gpu_available() # False

发现tensorflow的gpu成功运行上,如下图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/jn10010537/article/details/114169373