在keras中使用gpu加速训练模型;安装cuda;cudnn;cudnn_cnn_infer64_8.dll 不在path中;device_lib.list_local_devices无gpu;挂掉

在keras中使用gpu加速训练模型,如何安装cuda,cudnn,解决cudnn_cnn_infer64_8.dll 不在path中,解决device_lib.list_local_devices()中无gpu,解决jupyter使用gpu训练总是挂掉的等问题

全网最全!!!亲自踩坑

首先打开任务管理器,查看自己电脑是否存在gpu

在这里插入图片描述

1、安装tensorflow-gpu

Pip install tensorflow-gpu==2.8.0 -i https://pypi.tuna.tsinghua.edu.cn/simple --user

注意,以前安装的tensorflow默认是cpu版的,所以我们下载这个是gpu版的,注意版本得和tensorflow一致(网上说要在tensorflow安装之后安装tensorflow-gpu)

2、安装keras (先安装keras的话,安装tensorflow会把karas安装到一致的版本)

3、安装CUDA

首先在命令行输入 NVIDIA-smi,查看自己的gpu,驱动版本,CUDA版本
在这里插入图片描述

打开网址 https://developer.nvidia.com/cuda-toolkit-archive
按照以下表格安装对应的CUDA版本(我的11.5是已经下载好的),下载exe
在这里插入图片描述

下载这个东西,然后双击下载好的东西
注意:在装CUDA时选择自定义安装,取消“Visual Studio”这一项就可以了(大概在第一个下面)
在这里插入图片描述

4、安装cudnn

在这个网址,下载对应的cudnn:[https://developer.nvidia.com/rdp/cudnn-archive](https://developer.nvidia.com/rdp/cudnn-archive)

比如我下载的就是这个
在这里插入图片描述

将下载好的压缩包解压,然后只需要把下载后的压缩文件解压缩,分别将cuda/include、cuda/lib、cuda/bin三个目录中的内容拷贝到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5对应的include、lib、bin目录下即可。

5、添加环境变量

把安装的CUDA的bin目录和libnvvp加到path环境中

在这里插入图片描述

6、测试代码

首先用以下代码,查看自己的设备信息

from tensorflow.python.client import device_lib
 
def get_available_gpus():
    local_device_protos = device_lib.list_local_devices()
    print(local_device_protos)
    return [x.name for x in local_device_protos if x.device_type == 'GPU']
get_available_gpus()

在这里插入图片描述

  • 如果没有gpu说明安装的cuda版本不对,找不到电脑的gpu,需要在控制面板里面把CUDA开头的之前安装的版本的文件都卸载,再把C:\Program
    Files\NVIDIA GPU Computing Toolkit全部删除,重复以上步骤安装对应的CUDA版本

  • 如果以上代码运行发现有gpu了,说明版本没错,现在可以测试一下自己的代码了,通过一下代码指定使用gpu进行训练,直接开跑即可
    在这里插入图片描述

如果弄好之后运行jupyter文件,每次都挂掉了,打开jupyter的命令行窗口查看,是否存在
Please make sure cudnn_cnn_infer64_8.dll is in your library path!
这句话,如果存在,首先检查自己的环境变量中是否在path中添加了这两个,没有的话添加进去
在这里插入图片描述

如果添加了还是这种情况,那么就是电脑中没有zlibwapi.dll文件。
打开这个网址
https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#install-zlib-windows
在这里插入图片描述

点击安装这个,解压下载的压缩包,打开dll_x64文件夹
在这里插入图片描述

复制这个dll文件,将它复制到C:\Windows\System32目录下,重新启动jupyter,发现已经可以运行了

注意:multi_gpu_model这个方法是多个gpu运行才需要指定的,单个gpu直接开跑即可

参考文章:
https://blog.csdn.net/fun_always/article/details/103357840
https://www.jianshu.com/p/9bdeb033e765
https://blog.csdn.net/weixin_44704985/article/details/109500188
https://blog.csdn.net/qq_46126258/article/details/112708781

  • 15
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
Keras使用GPU进行加速需要进行以下步骤: 1. 安装CUDAcuDNN:首先需要安装CUDAcuDNN,这是GPU加速的基础,可以从NVIDIA的官方网站下载并安装。 2. 安装TensorFlow或Theano:Keras是一个高度模块化的Python库,可以在多种深度学习框架上运行。TensorFlow和Theano是两个广泛使用的框架,都支持GPU加速。在使用Keras之前,需要先安装一个框架。 3. 检查GPU支持:在Keras使用GPU加速之前,需要确保GPU可用且Keras能够访问它。可以使用以下代码来检查GPU支持情况: ``` import tensorflow as tf print(tf.test.is_gpu_available()) ``` 如果输出结果为True,则说明GPU可用。 4. 指定GPU:如果有多个GPU可用,则需要指定使用哪个GPU。可以使用以下代码来指定GPU: ``` import os os.environ["CUDA_VISIBLE_DEVICES"] = "0" # 使用第一个GPU ``` 5. 在Keras启用GPU:在Keras启用GPU非常简单,只需要在代码添加以下一行即可: ``` from keras.backend.tensorflow_backend import set_session config = tf.ConfigProto() config.gpu_options.per_process_gpu_memory_fraction = 0.3 # 占用30%的GPU显存 set_session(tf.Session(config=config)) ``` 这将允许Keras使用GPU加速计算。 6. 编写代码:在完成上述步骤后,就可以开始使用Keras进行深度学习任务了。可以使用以下代码来编写一个简单的Keras模型: ``` from keras.models import Sequential from keras.layers import Dense model = Sequential() model.add(Dense(64, activation='relu', input_dim=100)) model.add(Dense(1, activation='sigmoid')) model.compile(optimizer='rmsprop', loss='binary_crossentropy', metrics=['accuracy']) model.fit(x_train, y_train, epochs=10, batch_size=128) ``` 这将创建一个包含两个密集层的神经网络,并使用GPU加速进行训练。 注意:以上步骤仅适用于使用TensorFlow或Theano作为后端的Keras版本。如果使用CNTK作为后端,则需要使用不同的API来启用GPU加速

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无心同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值