YOLOv5训练:epoch从0变1时,GPU显存消耗突然翻倍

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了YOLOv5训练:epoch从0变1时,GPU显存消耗突然翻倍相关的知识,希望对你有一定的参考价值。

参考技术A

[ 问题描述 ]训练YOLOv5模型,Epoch从0变1时,GPU显存消耗突然翻倍,例如:从3.54G 突然增长到8.08G

[ 解决方案 ] 这是因为训练完毕后,执行Validation导致的显存翻倍。在训练时,加入参数 --noval即可。训练命令如下:

参考链接: https://github.com/ultralytics/yolov5/issues/610

GPU训练时Tensorflow 2.5退出代码-1073740791

【中文标题】GPU训练时Tensorflow 2.5退出代码-1073740791【英文标题】:Tensorflow 2.5 exit code -1073740791 when GPU training 【发布时间】:2021-12-04 10:32:02 【问题描述】:

在 GPU 上训练 Tensorflow 模型时,调用:

model.fit(...)

立即退出代码-1073740791 (0xC0000409)

Epoch 1/500
2021-10-16 20:13:42.154951: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library cudnn64_8.dll

Process finished with exit code -1073740791 (0xC0000409)

在 CPU 上做同样的事情没有任何问题。

系统信息:

Python 版本:3.8 CUDA 版本:11.2 cuDNN 版本:8.1 Tensorflow 版本:2.5 操作系统:Windows 10 专业版

【问题讨论】:

【参考方案1】:

从终端运行相同的脚本显示不同的错误,表明该文件

cudnn_adv_infer64_8.dll

在路径中找不到。

从 cuDNN bin 文件夹中移动其余文件,即:

cudnn_adv_infer64_8.dll
cudnn_adv_train64_8.dll
cudnn_cnn_infer64_8.dll
cudnn_cnn_train64_8.dll
cudnn_ops_infer64_8.dll
cudnn_ops_train64_8.dll

进入 CUDA bin 文件夹解决了这个问题。

【讨论】:

以上是关于YOLOv5训练:epoch从0变1时,GPU显存消耗突然翻倍的主要内容,如果未能解决你的问题,请参考以下文章

训练yolov5模型时遇到:TypeError: ‘NoneType‘ object is not callable

限制tensorflow训练时的显存设置,以及可见显卡号

[深度学习][原创]yolov5在GTX1660Ti上训练nan解决方法

GitHub YOLOv5 开源代码项目系列讲解------使用云端GPU训练Yolov5模型

deepfacelab训练gpu不工作

YOLOV5-断点训练/继续训练