【进程丢失】pytorch DDP分布式训练10个epoch就丢失1个GPU进程

66 篇文章 1 订阅
12 篇文章 0 订阅
在使用PyTorch的DDP分布式训练时,遇到训练到特定epoch后丢失GPU进程的问题。初步分析可能是由于batch size过大导致显存溢出或内存泄漏。尝试解决方案包括减小batch size和监控内存使用。通过日志分析,确认第二次问题由内存耗尽触发了系统杀死进程。经过代码调整,内存泄漏问题似乎得到缓解。
摘要由CSDN通过智能技术生成

现象

第一次

Resnet50 + Arcsoftmax + deepglint *2 训练10个epoch之后,会丢失一个GPU进程,然后训练程序卡住不动。重复发生,并且每次都是训练到10个epoch时发生,注意每次掉进程的卡bus id不一样
Pytorch 版本 1.7.0 ,卡:titan rtx x 8

第二次

Resnet100 + Arcsoftmax + (megaface + vggface2 + deepglint) *2 训练1个epoch (还没到2个epoch)之后
服务器锁屏tts界面显示:Out of memory,系统杀掉了进程
在这里插入图片描述

原因分析

第一次-原因分析

很奇怪的bug,根据第一次日志,目前分析的原因:

  1. batch size过大,每张卡显存占的太满,导致训练的时候显存爆
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值