训练yolov5时,RuntimeError: CUDA out of memory.

训练yolov5时, 遇到错误。RuntimeError: CUDA out of memory. Tried to allocate 56.00 MiB (GPU 0; 10.00 GiB total capacity; 9.13 GiB already allocated; 0 bytes free; 9.26 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_
split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF。

解决方法一:该博文描述的方法
解决方法二:parser.add_argument(‘–img-size’, nargs=‘+’, type=int, default=[640, 640], help=‘[train, val] image sizes’)
将这里改成parser.add_argument(‘–img-size’, nargs=‘+’, type=int, default=[384, 384], help=‘[train, val] image sizes’)

本来是想将图片尺寸增大一些导致的错误。原因是,我的batch-size仍然是原来的70, 但是图片尺寸增大后, 导致显卡内存不够,还可以将batch-size改小, 我改为32 也是可以跑的。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当在训练AI模型遇到CUDA内存不足的问题,这可能是由于模型过大或者训练数据量大导致的。我们可以采取一些措施来解决这个问题。 首先,我们可以尝试减小模型的规模。可以通过减少模型的隐藏层数、每层的神经元数目或者使用更小的词嵌入矩阵等方法来减小模型的尺寸。通过减小模型的规模可以减少所需的内存量,从而避免CUDA内存不足的问题。 其次,我们可以使用更小的批量大小来训练模型。批量大小越大,所需的内存量就越大。通过减小批量大小,我们可以减少内存的使用量,从而解决CUDA内存不足的问题。虽然较小的批量大小可能会对训练的速度产生一定影响,但这是一个权衡的问题。 另外,我们可以考虑将模型的训练进行分布式处理。通过将模型训练过程分解到多个GPU或者多台机器上,可以同利用多个设备的内存来解决内存不足的问题。这种方式需要使用分布式训练框架,如TensorFlow的分布式训练。 此外,我们还可以考虑使用更大的GPU显存或者使用具有更高显存容量的设备。GPU显存越大,我们可以训练更大的模型或者使用更大的批量大小。这需要确保训练设备具有足够的显存容量来存储模型参数和中间计算结果。 总之,在遇到CUDA内存不足的问题,我们可以通过减小模型规模、采用较小的批量大小、分布式训练或者使用更大的GPU显存等方式来解决。选择适合的方法取决于具体的情况和可用的资源。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值