Atlas200DK segment fault错误定位

举报
zxros10 发表于 2020/03/31 10:40:22 2020/03/31
【摘要】 当我们使用自动运行脚本或者mindstudio运行应用程序发生失败时,如果日志中看不到任何应用相关的错误打印时,我们可以使用下列方法进一步定位:1. ssh登录开发板;2. 进入应用部署目录。开发板上应用都部署在/home/HwHiAiUser/HIAI_PROJECTS/ascend_workspace(C30版本)或者/home/HwHiAiUser/HIAI_PROJECTS/asce...

当我们使用自动运行脚本或者mindstudio运行应用程序发生失败时,如果日志中看不到任何应用相关的错误打印时,我们可以使用下列方法进一步定位:

1. ssh登录开发板;

2. 进入应用部署目录。开发板上应用都部署在/home/HwHiAiUser/HIAI_PROJECTS/ascend_workspace(C30版本)或者/home/HwHiAiUser/HIAI_PROJECTS/ascend_workspace/workspace_mind_studio (C32版本)目录下,根据应用程序的名称,有对应的部署子目录。例如人脸识别:

/home/HwHiAiUser/HIAI_PROJECTS/ascend_workspace/ascend_workspace/facialrecognitionapp/out/

注意:C32版本目录稍有不同,是以应用程序名(facialrecognitionapp)加一个随机值作为部署目录的

3. 手动执行应用程序。在项目部署目录下,以ascend开头(C32版本是以workspace开头)的文件,即程序运行bin文件,直接执行该文件,例如:

./ascend_facialrecognitionapp

如果执行终止并且打印segment fault,说明程序发生段错误。

段错误定位:


1. 配置开发板联网;

2. 在开发板上执行sudo apt-get install gdb安装gdb 工具;

3. 开发板上输入命令ulimit -c unlimited打开coredump;

4. 开发板上手动执行发生异常的样例程序bin文件,例如:

./ascend_facialrecognitionapp

  再次发生异常的时候会生成一个名为core文件

5. 执行命令 gdb ascend_objectdetection core打开core文件;

6. 输入 bt命令即可查看异常时的调用栈,然后根据调用栈分析代码找到引起异常的原因。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。