汇总在手,玩转自由|报错调试宝典大~收~官~
收藏回复举报
汇总在手,玩转自由|报错调试宝典大~收~官~
发表于2023-05-19 10:19:37
0 查看

短短几个月,感谢用户们陪伴我们学完了报错调试宝典的所有内容。所以就在今天,MindSpore团队为了方便大家的查阅和浏览,特此回赠大家报错宝典汇总!

本系列针对数据加载与处理类报错、网络构建与训练类报错(5篇)和分布式并行类报错(4篇)以案例的方式详细展开,根据获取到的网络、框架各种信息(例如:报错信息、网络环境等信息)进行错误原因分析,推断错误的可能原因,定位出问题代码并调试,更多报错内容可以参考我们的报错地图(https://www.hiascend.com/developer/blog/details/0229108045633055169)~

1%E6%95%B0%E6%8D%AE%E5%8A%A0%E8%BD%BD%E4%B8%8E%E5%A4%84%E7%90%86%E7%B1%BB%E6%8A%A5%E9%94%99.png

首篇以数据处理类型报错开始,从Python Call Stack、Dataset Pipeline Error Message、C++ Call Stack等多个维度快速定位问题并调试,讲解数据加载与处理类报错的解决流程。

昇思MindSpore报错调试宝典(一):

%E4%B8%80%E6%95%B0%E6%8D%AE%E5%8A%A0%E8%BD%BD%E4%B8%8E%E5%A4%84%E7%90%86%E7%B1%BB.png

1-2%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99.png

网络构建与训练过程,按执行模式可以分为动态图模式和静态图模式,按执行阶段可以为编译阶段和执行阶段。不同模式下,不同执行阶段,错误分析的方法不同。常见报错问题可以参考下列5篇内容。

2.1%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8Bcontext%E9%85%8D%E7%BD%AE%E9%97%AE%E9%A2%98.png

详细讲解mindspore.set_context算子的使用方法以及配置方法,希望大家在后续使用context算子过程中可以轻松解决相关的报错问题!

MindSpore报错调试宝典(二):

%E4%BA%8C%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8Bcontext%E9%85%8D%E7%BD%AE%E9%97%AE%E9%A2%98%EF%BC%9A.png

2.2%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E8%AF%AD%E6%B3%95%E9%97%AE%E9%A2%98.png

掌握本期内容,Python语法错误问题和昇思MindSpore静态图语法错误问题(例如控制流语法不支持、Tensor切片错误等)全部退!退!退!

昇思MindSpore报错调试宝典(三):

%E4%B8%89%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E8%AF%AD%E6%B3%95%E9%97%AE%E9%A2%98.png

2.3%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E7%AE%97%E5%AD%90%E7%BC%96%E8%AF%91%E9%94%99%E8%AF%AF.png

算子编译错误(算子参数值、类型、shape不满足要求或算子功能受到限制)解决方案小专场!本期以构建ReduceSum单算子网络时输入超过该算子支持维度为例来分析讲解如何定位与调试。

昇思MindSpore报错调试宝典(四):

%E5%9B%9B%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E7%AE%97%E5%AD%90%E7%BC%96%E8%AF%91%E9%94%99%E8%AF%AF.png

2.4%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E7%AE%97%E5%AD%90%E6%89%A7%E8%A1%8C%E9%94%99%E8%AF%AF.png

迷失在算子执行错误的迷雾中?别担心!本期内容以mindspore.ops.ResizeBicubic算子内部数据没有进行定义进而导致输出异常为例来讲解如何解决算子执行错误的问题。

昇思MindSpore报错调试宝典(五):

%E4%BA%94%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E7%AE%97%E5%AD%90%E6%89%A7%E8%A1%8C%E9%94%99%E8%AF%AF.png

2.5%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E8%B5%84%E6%BA%90%E4%B8%8D%E8%B6%B3.png

看看网络构建与训练类报错常见的最后一个问题分类,即资源不足方面的报错,如遇到资源不足方面的报错,如 Out Of Memory、memory isn’t enough 等等资源问题应该如何分析呢?

昇思MindSpore报错调试宝典(六):

%E5%85%AD%E7%BD%91%E7%BB%9C%E6%9E%84%E5%BB%BA%E4%B8%8E%E8%AE%AD%E7%BB%83%E7%B1%BB%E6%8A%A5%E9%94%99%E4%B9%8B%E8%B5%84%E6%BA%90%E4%B8%8D%E8%B6%B3.png

1-3%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E7%B1%BB%E6%8A%A5%E9%94%99.png

MindSpore提供分布式并行训练功能,支持多种并行模式。分布式并行常见问题和可能原因主要有策略配置错误和并行脚本配置错误。具体问题可以参考以下4篇内容。

3.1%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E7%AE%97%E5%AD%90%E9%80%BB%E8%BE%91%E7%AD%96%E7%95%A5%E9%85%8D%E7%BD%AE.png

学完本期宝典,因为算子本身逻辑导致的策略检查报错烦恼直接say bye bye!

昇思MindSpore报错调试宝典(七):

%E4%B8%83%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E7%AE%97%E5%AD%90%E9%80%BB%E8%BE%91%E7%AD%96%E7%95%A5%E9%85%8D%E7%BD%AE.png

3.2%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E5%B8%B8%E6%95%B0%E7%AD%96%E7%95%A5%E9%85%8D%E7%BD%AE.png

探讨因为常数策略配置错误遇到报错时应该如何处理。多快好省解决报错的快乐提前拿捏! 

昇思MindSpore报错调试宝典(八):

%E5%85%AB%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E5%B8%B8%E6%95%B0%E7%AD%96%E7%95%A5%E9%85%8D%E7%BD%AE.png

3.3%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E6%9C%AA%E9%85%8D%E7%BD%AE%E7%AD%96%E7%95%A5.png

没有对策略进行配置也可能出现报错。本期将以未配置Sub算子导致出错为例,帮助大家学习未配置策略解决方案!

昇思MindSpore报错调试宝典(九):

%E4%B9%9D%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E6%9C%AA%E9%85%8D%E7%BD%AE%E7%AD%96%E7%95%A5.png

3.4%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E5%B9%B6%E8%A1%8C%E8%84%9A%E6%9C%AC.png

昇思MindSpore报错调试宝典第十弹!详解并行脚本中多进程方式(用户需要启动和卡数对应的进程,以及配置rank_table表。)启动多卡任务失败的案例,解决分布式并行训练中的报错难题。

昇思MindSpore报错调试宝典(十):

%E5%8D%81%E5%88%86%E5%B8%83%E5%BC%8F%E5%B9%B6%E8%A1%8C%E6%8A%A5%E9%94%99%E4%B9%8B%E5%B9%B6%E8%A1%8C%E8%84%9A%E6%9C%AC.png

好啦,本系列内容圆满收官啦!如果有任何问题和错误欢迎大家前往昇思MindSpore论坛社区(https://www.hiascend.com/forum/forum-0106101385921175002-1.html)进行提问交流,再次感谢大家的长期支持和陪伴!!

本帖最后由 匿名用户2025/05/14 09:32:49 编辑

我要发帖子