hello!大家好
书接上一回,我想到的解决方案有三种,一种是重头再来,重新配置和CUDA12.3对应的一系列包;第二种是看到其他博主直接在Anconda的虚拟环境中下载对应的cuda和cudnn,之后再匹配对应的tensorflow和其他package;第三种是直接在上次CPU运行的环境中加入运行到GPU的语句中看看能否运行,但是我上一次使用的虚拟环境好像被破坏了,没有找到┭┮﹏┭┮,就不考虑第三种方法了。
因此先来试试第二种ideal
try
1.首先创建一个新的虚拟环境
conda create -n tf2.6 python=xxx
2.激活这个环境并下载CUDA 11.2,也要安装对应版本的cudnn(现在清楚了)!
conda install cudatoolkit=11.2.0
conda install cudnn=8.1.0.77
3.选择对应的tensorflow下载,我本来计划下载2.6.0,但下载不了最后照着对应关系选择2.10.0下载的。
4.下载对应需要的包:
opencv-python
scikit-image
matplotlib
5.最终用上篇文章中提到的代码进行验证
可见我的电脑能够使用的GPU 数量:
可使用的设备信息:
cudnn
cuDNN全称NVIDIA CUDA® Deep Neural Network library, 是一个用于深度神经网络的GPU加速库,包含了为神经网络中常见的计算任务提供高度优化的实现。包括前向卷积、反向卷积、注意力机制、矩阵乘法(matmul)、池化(pooling)和归一化(normalization)等。
cuDNN的最常见用途是在深度学习框架(如TensorFlow或PyTorch)的开发中。深度学习框架开发者在编写框架时,通常会调用cuDNN,从而几乎不直接与CUDA进行交互。
CUDA Toolkit是一个更底层的工具包,其中的库是针对的是更基础的操作,比如线性代数(cuBLAS: 加速矩阵和向量运算)、信号分析(cuFFT: 用于执行快速傅立叶变换)。
cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算,因此想要在CUDA上运行深度神经网络,就要安装cuDNN。
运行
后续进行相关搜索,发现使用tensorflow时不用写to(cuda)这样的代码,而在pytorch中需要用到。然后直接再次运行Dense网络的代码,发现后面显示我的GPU内存不足。
显存大小是硬伤,后续再尝试解决这个问题吧
参考文章
Tensorflow与Python、CUDA、cuDNN的版本对应表_tensorflow版本对应python3.11-优快云博客
十分钟安装Tensorflow-gpu2.6.0+本机CUDA12 以及numpy+matplotlib各包版本协调问题-优快云博客
Windows系统下,电脑有nvidia的GPU,但是torch.cuda.device_count()显示GPU数量为0-优快云博客
CUDA系列 | 什么是cuDNN? - 知乎 (zhihu.com)
tensorflow使用显卡gpu进行训练详细教程_tensorflow怎么用gpu训练-优快云博客
解决tensorflow gpu报错: ran out of memory (OOM)-优快云博客