MindSpore数据增强后,内存不足,自动退出
1 报错描述
1.1 系统环境
ardware Environment(Ascend/GPU/CPU): Ascend
Software Environment:
– MindSpore version (source or binary): 1.6.0
– Python version (e.g., Python 3.7.5): 3.7.6
– OS platform and distribution (e.g., Linux Ubuntu 16.04): Ubuntu 4.15.0-74-generic
– GCC/Compiler version (if compiled from source):
1.2 基本信息
1.2.1脚本
yolov4使用mosaic进行数据增强。
https://gitee.com/mindspore/models/tree/master/official/cv/yolov4
1.2.2报错
此报错信息不是导致退出的直接原因,可在日志中查看到有警告提示:“Memory consumption is more than…”,根据警告提示定位到是由于内存不足导致程序退出。
2 原因分析
batch算子会实时监控内存占用率,mindspore在1.6.版本之前,内存占用率达到0.95时会告警退出。目前在minspore==1.6.0后版本已对该阈值进行更新,在内存占用超过0.8时会进行告警,用户可在发现内存不足之后及时进行处理。
3 解决方法
用户在使用mindspore框架进行大数据训练时,需要多注意内存占用率,防止内存占用过高导致直接退出。当出现内存占用警告提示时,应该减少per_batch_map里面的内存占用。