【目标检测】RuntimeError:CUDA error:out of memory问题解决方案

pytorch: 四种方法解决RuntimeError: CUDA out of memory. Tried to allocate ... MiB Bug:RuntimeError: CUDA out of memory. Tried to allocate … MiB 解决方法: 法一: 调小batch_size,设到4基本上能解决问题,如果还不行,该方法pass。 法二: 在报错处、代码关键节点(一个epoch跑完…)插入以下代码(目的是定时清内存): import torch, gc gc.collect() torch.cuda.empty_cache() 法三(常用方法): 在测试阶段和验证阶段前插入代码 with torch.no_gr 阅读详情

问题描述

在这里插入图片描述

今天在用YOLOv5训练模型的时候发现报错:

RuntimeError:CUDA error:out of memory

查了一下百度的方法 是在Python文件(你要运行哪个就设置哪个,当然也可也通过环境变量统一设置)中手动设置调用GPU的编号

import os
os.environ["CUDA_VISIBLE_DEVICES"] = '1'

结果就是可以跑起来但是根本不调用GPU,所以速度奇慢无比。
(经后来分析因为我使用的云服务器只有一个卡能用,所以默认为0,设置成1应该也是在用0号)
在这里插入图片描述可以看到gpu_mem为0,通过命令nvidia-smi查看后台GPU并没有被占用
在这里插入图片描述
这似乎就奇了怪了,网上一般都是以上的方法,还有修改cfg文件的方式(关键字 修改subdivisions )但是因为查到都是在YOLOv3的文件里修改,在YOLOv5里我没找到,修改batch-size也没有用,这时候就一筹莫展。

解决方案

终极解决方案就是重新配置了一个实例!

将之前不能使用的主机镜像保存,然后重新配置一个实例,之后将镜像加载进去,之后就可以正常运行了!
在这里插入图片描述再次训练gpu_mem不再是0
在这里插入图片描述
通过命令查看后台也不再是No running processes found在这里插入图片描述
虽然说这样问题就解决了,但这个问题解决的前提是我使用了租赁的云服务器并且可以方便重新配置并更换镜像的前提下,如果是其他情况下可能上边的os.environ["CUDA_VISIBLE_DEVICES"] = '1'的方法更适用,但也许还有其他的办法,真正出现这个问题的原因我还没有明白,希望有大佬可也赐教,有更好的解决方案。

最后推荐一下我使用的服务器平台AutoDL,感觉价格挺良心,初次使用有免费的金额可以白嫖,挺适合学生的感觉,感兴趣可以点击链接注册了解一下:AutoDL注册

解决:RuntimeError: CUDA out of memory. Tried to allocate 128.00 MiB (GPU 0; 2.00 GiB total capacity; 1 1. 问题2. 分析3. 解决 1. 问题 训练模型时报错: RuntimeError: CUDA out of memory. Tried to allocate 128.00 MiB (GPU 0; 2.00 GiB total capacity; 1.49 GiB already allocated; 57.03 MiB free; 6.95 MiB cached) 2. 分析 这种问题,是GPU内存不够引起的 3. 解决 方法一: 换高性能高显存的显卡 方法二:修改代码 报错的训练代码为. 阅读详情

相关推荐

yolov5测试报错:RuntimeError: CUDA out of memory.

RuntimeError: CUDA out of memory.不一定是现存不足;

猫猫与橙子的博客 6974

全网最全RuntimeError: CUDA error: out of memory解决方法

第一种情况 如果这个报错后面跟了想要占用多少显存但是不够这样的字眼,如下: 解决办法就很简单了: 改小batchsize,batchsize砍半可以差不多省掉一半的显存 推理阶段加上with torch.no_grad(),这个可以将修饰的代码段不要梯度,可以省掉很多显存 改小input的shape,例如(224,224)->(112,112)这样可以省掉一半的显存 换小的网络结构 用多卡训练,torch可以用model = nn.DataParallel(model)启用多卡训练,终端用CUDA

qq_37668436的博客 5万+

YOLO26环境配置与实时目标检测实战指南

目标检测是计算机视觉中的核心技术,通过定位和识别图像中的物体为各类应用提供基础支持。YOLO(You Only Look Once)作为代表性的单阶段检测算法,以其高效的实时处理能力著称。其核心原理是将目标检测视为回归问题,通过单个神经网络直接预测边界框和类别概率。最新YOLO26版本在保持实时性的同时,通过优化网络结构显著提升了小目标检测精度。在工程实践中,合理配置GPU环境、选择匹配的PyTorch和CUDA版本是关键,TensorRT加速和多线程处理能大幅提升推理效率。该技术已广泛应用于智能交通监控、

weixin_30412167的博客 384

如何解决“RuntimeError: CUDA Out of memory”问题

点击上方“AI公园”,关注公众号,选择加“星标“或“置顶”作者:Nitin Kishore编译:ronghuaiyang导读一些可以尝试的解决“RuntimeError: CUDA Out of memory”的方案。当遇到这个问题时,你可以尝试一下这些建议,按代码更改的顺序递增:减少“batch_size”降低精度按照错误说的做清除缓存修改模型/训练在这些选项中,如果你使用的是预训练模型,则最容...

AI公园 1万+

YOLO26目标检测实战:从环境配置到自定义训练完整指南

目标检测作为计算机视觉的核心技术,通过边界框定位和类别识别实现物体的智能感知。其技术原理基于深度学习模型对图像特征的多尺度提取与回归预测,在自动驾驶、工业质检等领域具有重要价值。YOLO算法凭借单阶段检测架构,在实时性和精度上表现突出,特别是最新的YOLO26版本在环境配置和自定义训练方面进行了深度优化。本文聚焦YOLO26实战应用,详细解析从Python环境搭建、PyTorch框架配置到自定义数据集训练的完整流程,帮助开发者快速掌握目标检测的工程实践技能,解决实际项目中的部署难题。

weixin_30654583的博客 604

NVIDIA全栈AI工具链解析:从CUDA到Triton的实战指南

GPU并行计算作为现代人工智能的核心基础,通过CUDA架构实现了大规模数据的高效处理。其原理是利用数千个计算核心同时执行任务,显著提升深度学习模型的训练和推理速度。在技术价值层面,GPU加速使得Transformer等大模型成为可能,为计算机视觉和自然语言处理领域带来突破性进展。应用场景涵盖从自动驾驶的实时感知到医疗影像的智能分析,其中模型部署的标准化尤为关键。NVIDIA Triton推理服务器通过动态批处理和统一内存管理等热词技术,解决了生产环境中模型服务的性能瓶颈。TensorRT的层融合优化则进一步

weixin_30883311的博客 375

【纯干货级教程】解决RuntimeError:CUDA out of memory

本文对于采用CPU/LAPTOP-GPU如何加快训练进程,会有较为明确的描述和解决方法,如果目前你存在设备算力差等类似情况的话,相信参考本文的步骤进行尝试是能够解决的。

2401_84870184的博客 5958

Linux系统下MMRotate环境配置全攻略:从驱动到实战训练

旋转目标检测是计算机视觉领域的重要分支,尤其在遥感图像分析、场景文字识别和自动驾驶等方向性物体识别场景中具有关键应用价值。其核心原理在于通过旋转边界框更精确地定位和识别任意方向的物体,相比水平框能显著提升检测精度。在工程实践中,OpenMMLab生态提供的MMRotate工具箱集成了多种先进算法,成为实现旋转检测的主流技术方案。然而,其环境配置涉及复杂的软件栈协同,包括NVIDIA驱动、CUDA、PyTorch、MMCV等多个组件的版本匹配,是实际部署中的常见挑战。本文以MMRotate和DOTA数据集为例

weixin_34417200的博客 687

Runtime Error:cuda runtime error(2):out of memory at /……/torch/…….cu:66

在运行faster RCNN_pytorch的代码时碰到了这个问题,找到以下几种解决方法: 1.减小batchsize 如果是因为模型太大内存不够,减小bs就能解决 2.Variable(x)改成Variable(x,volatile=True) 3.在模型中预测部分的代码前面加入with torch.no_grad(): ...

philipwelia的博客 1971

VisDrone2019数据集太慢?我用YOLOv5m训练无人机检测模型,附完整代码与避坑指南

本文详细介绍了如何使用YOLOv5m优化VisDrone2019数据集的训练过程,包括环境配置、数据集加速获取、标签转换技巧以及模型调优方案。通过实战验证的避坑指南和完整代码,帮助开发者高效训练无人机检测模型,提升目标检测精度与速度。

weixin_30715523的博客 321

YOLOv8大豆叶病检测实战:新手目标检测入门指南

目标检测是计算机视觉的核心任务之一,其原理在于通过深度学习模型定位并识别图像中的特定对象。YOLO系列作为单阶段检测框架的代表,以高效、轻量和易部署著称;其中YOLOv8凭借anchor-free设计、统一API接口和内置可视化能力,显著降低了学习门槛。该技术在农业智能诊断、工业缺陷识别、交通监控等场景中具备广泛工程价值。对于初学者而言,选择结构清晰、标注规范、类别精简的大豆叶病数据集作为切入点,既能快速验证训练流程,又能深入理解数据预处理、损失分析、参数调优等关键环节。本文围绕yolov8与目标检测两大热

weixin_34112181的博客 418

Windows下YOLOv5环境搭建与优化指南

目标检测是计算机视觉的核心任务之一,YOLO系列算法因其高效的实时性能被广泛应用。在Windows平台搭建深度学习环境时,关键要解决Python环境隔离、CUDA版本匹配和硬件驱动兼容性问题。通过Anaconda创建虚拟环境,配合PyTorch官方支持的YOLOv5实现,可以构建稳定的开发环境。实践中使用TensorRT加速和半精度推理能显著提升性能,而合理配置多GPU训练则能充分利用硬件资源。本方案特别针对Windows系统优化,包含从基础环境准备到性能调优的全流程解决方案,帮助开发者快速搭建高效的YOL

weixin_30902251的博客 456

别再折腾端口了!Kali Nethunter Kex 图形化桌面连接失败的真正原因与一键修复(附Termux命令)

本文深入分析了Kali Nethunter Kex图形化桌面连接失败的真正原因,包括端口配置变更、依赖缺失和权限问题,并提供了一键修复方案和Termux命令。通过详细的诊断步骤和优化配置,帮助用户快速恢复Kex功能,提升移动安全测试效率。

weixin_42530732的博客 417

YOLOv8目标检测实战:从零搭建蜜蜂识别系统完整指南

目标检测作为计算机视觉的核心技术,通过识别图像中的特定对象并定位其位置,在智能监控、工业质检和农业监测等领域发挥着重要作用。YOLOv8作为YOLO系列的最新版本,采用单次前向传播的回归机制,在检测精度和推理速度上实现显著提升。其技术价值在于能够满足实时检测场景的需求,特别适合需要快速响应的应用。在农业监测领域,蜜蜂识别检测系统可应用于生态研究、智能蜂箱管理等场景,帮助自动统计蜜蜂数量、分析活动规律。本文基于YOLOv8模型,详细讲解如何从环境配置、数据集准备到模型训练与部署,完整实现一个可用的蜜蜂检测系统

weixin_34268169的博客 337

海康工业相机触发模式详解:软触发 vs 外触发,在C#里如何选与用?

本文深入解析海康工业相机的软触发与外触发模式,详细比较两者的特性差异、适用场景及C#实现方法。通过海康SDK配置指南和实战代码示例,帮助开发者掌握工业相机触发模式的选择与优化技巧,提升自动化检测系统的精确性和可靠性。

weixin_42635064的博客 556

西门子S7-1500 PLC模块化编程与生产线自动化实践

PLC(可编程逻辑控制器)作为工业自动化核心设备,其模块化编程技术能显著提升产线控制系统的开发效率。通过SCL高级语言实现算法封装、功能块(FB)复用等工程实践,可构建稳定可靠的分层式控制架构。本文以西门子TIA Portal平台为例,详解S7-1500系列PLC在汽车零部件产线中的标准化应用方案,包含配方管理、设备联动等典型场景的SCL实现,以及Profinet通信、虚拟轴同步等进阶技巧。特别适用于需要快速实施中大型生产线自动化改造的工程师,提供经过验证的异常处理机制和模块化设计规范。

weixin_34341229的博客 459

逐行拆解tf_efficientnet_cc_b1_8e.in1k的config.json:12个关键配置项背后的工程逻辑

tf_efficientnet_cc_b1_8e.in1k 是 timm 生态中的高效图像分类模型(EfficientNet + CondConv,约 39.7M 参数),而本仓库的 [config.json](https://link.gitcode.com/i/b3f3712d46b5c33048b71d3661b8a057) 就是它的"模型身份证":声明了架构名、输出维度,以及一整套推理预处

gitblog_00707的博客 352

第069篇:浸入边界法进阶

浸入边界法(Immersed Boundary Method, IBM)是处理流固耦合问题的强大数值方法。本文深入介绍直接力法、反馈力法、Ghost Cell方法和多域IBM等高级技术。通过Python实现完整的IBM求解器,展示处理移动边界、弹性边界和多体相互作用的方法。浸入边界法,直接力法,反馈力法,Ghost Cell,流固耦合,移动边界,弹性边界Navier-Stokes方程添加体积力项:∂u∂t+(u⋅∇)u=−1ρ∇p+ν∇2u+f\frac{\partial \mathbf{u}}{\part

2401_87715305的博客 413

DETR实战指南:基于Transformer的端到端目标检测模型解析与应用

目标检测是计算机视觉的核心任务,旨在定位和识别图像中的物体。传统方法依赖手工设计的锚框(Anchor)和非极大值抑制(NMS)后处理,流程复杂。Transformer架构通过自注意力机制建模全局依赖关系,为视觉任务带来了新范式。DETR(DEtection TRansformer)创新性地将目标检测构建为集合预测问题,利用Transformer编码器-解码器结构,直接输出预测框集合,实现了端到端的训练与推理,简化了流程并提升了框架的统一性。其技术价值在于提供了一种不依赖手工组件的干净检测框架,推动了基于注意

weixin_34378767的博客 359

【图像超分】论文复现:CVPR 2024 | 轻量化超分 | 窗口注意力改进 | CAMixerSR的Pytorch源码复现,跑通源码,获得指标和超分结果,计算复杂度,架构梳理拆解,逐行注释!

本文介绍了超分辨率重建方法CAMixerSR的代码实现与运行指南。文章亮点包括:完整跑通源码获取PSNR/SSIM指标和可视化结果;详细解析模型架构与关键代码注释,帮助快速复现基线模型。实验部分提供了测试配置文件和训练设置说明,支持2K/4K/8K大图像超分和x2/x4轻量化超分。环境依赖PyTorch和BasicSR框架,数据集包含DIV2K等常用基准。测试结果与论文指标一致,可视化输出保存至指定目录。训练配置可自定义数据集路径、GPU数量等参数。该实现突出了CAMixerSR在降低W-MSA复杂度方面的

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 438

YOLO11实战优化:长尾分布解决 | 引入Seesaw Loss配合YOLO11分类头,完美应对类别极其不平衡的现实业务场景

摘要: YOLO11在工业缺陷检测等长尾分布场景中面临尾部类别检测失效的问题,根源在于头部类别样本的负样本梯度压制了尾部类别的学习。传统方法如重采样、Focal Loss等效果有限。Seesaw Loss通过动态调整缓解因子和补偿因子,平衡类别间的梯度分布,结合YOLO11的解耦分类头、Anchor-Free设计和C2PSA/C3K2模块,显著提升尾部类别识别能力。文章详细解析了Seesaw Loss的数学原理,并提供了可直接集成到YOLO11的PyTorch实现代码,为长尾分布下的目标检测提供了实用解决方

2601_95807009的博客 255

基于YOLO的行人车辆目标检测:从YOLOv5到YOLOv8的全栈实战指南

本文全面介绍了基于YOLO系列模型的行人车辆检测系统构建方法。主要内容包括: YOLO算法原理深度解析 详细讲解了YOLOv1-v8各版本的演进历程和核心创新点 对比分析了不同版本的性能特点和适用场景 完整实践指南 数据集准备与标注转换 模型训练调优全流程 验证评估指标解读 模型导出与部署方案 系统实现 提供可运行的核心代码(train.py/val.py/detect.py等) 基于PyQt5的GUI界面开发 性能优化技巧(FP16/量化/剪枝等) 对比实验 在相同数据集上测试YOLOv5-v8的表现 给

m0_51689679的博客 707

基础入门篇 | YOLOv8 项目【训练】【验证】【推理】最简单教程 | YOLOv8必看 | 最新更新,直接打印 FPS,mAP50,75,95

三个文件搞定YOLOv8【训练】【验证】【推理】🚀🚀🚀

Coding... 2万+

7个实战技巧:快速解决fire-smoke-detect-yolov4-v5项目部署与训练难题

fire-smoke-detect-yolov4-v5是一个基于YOLO架构的火灾烟雾检测开源项目,结合了YOLOv4和YOLOv5两种主流目标检测算法,为开发者提供了完整的火灾检测解决方案。在实际部署和训练过程中,开发者常会遇到环境配置、模型训练、推理性能等多方面挑战。本文将系统性地梳理7个关键问题的解决方案,帮助您高效完成项目部署。 ## 环境配置与依赖管理 ### 问题一:CUDA版本冲

gitblog_00751的博客 323

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

别再为YOLOv5环境配置头疼了!Windows10+Anaconda+PyTorch1.7保姆级避坑指南

本文提供了一份详细的Windows10下YOLOv5环境配置与模型训练指南,涵盖Anaconda环境搭建、PyTorch版本选择、CUDA配置以及自定义数据集训练全流程。特别针对常见报错提供解决方案,帮助开发者快速部署和优化YOLOv5模型,提升目标检测项目的开发效率。

weixin_30443731的博客 410

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

上一篇: 【目标检测】YOLOv5 5.0调用摄像头报错的处理
下一篇: 【目标检测】grid cell、bounding box、ground truth的含义
Cul_accino
博客等级 码龄8年 8粉丝 8原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值