如何处理GPU训练过程中出现内存申请大小为0的错误【The memory alloc size is 0】

【现象描述】

GPU上网络运行过程中出现内存申请大小为0的错误,报错日志中有如下信息:

The memory alloc size is 0

【原因分析】

该错误出现是由于内存申请的时候调用接口时传入的申请size为0,因此报错,碰到场景非常少,一般原因是数据集读取的数据是空导致size为0

【排查步骤和解决方法】

步骤1:排查数据集中读取的数据是否有问题,可以通过context.set_context(save_graphs=True)保存图,然后观察*_validate*.ir这一类ir是否生成,如果未生成则说明图还未执行就报错了,基本上就确认了数据集读取数据出现问题了,可以自行排查或者联系MindData开发人员确认。

步骤2:如果前面步骤确认没有问题的话,需要MindSpore开发人员详细分析了,context.set_context(save_graphs=True)同时export GLOG_v=1保存执行日志,将保存的图和日志打包发给开发人员排查确认。

【建议与总结】

【相关参考文档】

猜你喜欢

转载自blog.csdn.net/beauty0220/article/details/129155143