GPU应用程序Attach调试记录

1.前期工作

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:空间域名、网络空间、营销软件、网站建设、商州网站维护、网站推广。

1.1工程路径确认

GPU项目共有6个工程,如图 1-1:

GPU应用程序Attach调试记录

图 1-1 GPU项目工程

这6个工程建议放在同一目录下,否则可能调试时会出现奇怪的问题,比如放在IDE默认的workspace目录下,如图 1-2:

GPU应用程序Attach调试记录

图 1-2 workspace工程目录

1.2测试程序文件名确认

例如测试程序工程叫gpu_test,那么主程序所在的文件名必须是gpu_test.c,不然调试时会报出找不到gpu_test.c警告。示例如图 1-3:

GPU应用程序Attach调试记录

图 1-3确认测试程序主文件

2.GDB调试设置

2.1新建调试项目

2.1.1打开测试工程主程序文件

如图 21:

GPU应用程序Attach调试记录

图 2-1打开测试主程序文件

2.1.2打开Debug Configurations选项

如图 2-2所示:

GPU应用程序Attach调试记录

图 2-2打开调试配置菜单

2.1.3新建SylixOS调试项目

右击SylixOS Remote Application选项,选择New选项来新建一个SylixOS调试项目,如图 2-3:

GPU应用程序Attach调试记录

图 2-3新建调试项目

2.2选择调试程序

注意不要选择strip目录下的程序,如图 2-4:

GPU应用程序Attach调试记录

图 2-4选择调试程序

2.3选择attach调试模式

如图 2-5:

GPU应用程序Attach调试记录

图 2-5选择attach调试模式

2.4添加动态库路径

一共要添加4个动态库的路径,如图 2-6和图 2-7:

GPU应用程序Attach调试记录

图 2-6添加动态库路径

GPU应用程序Attach调试记录

图 2-7添加后的动态库

2.5指定调试程序,开始调试

前提是测试程序和库都已经下载到目标板上,并且测试程序已经在运行状态,进程ID可以通过在连接到目标板的终端输入ps命令查到。如图 2-8:

GPU应用程序Attach调试记录

图 2-8指定进程ID

3.调试功能使用

3.1选择调试功能窗口

如图 3-1所示:可以按需要选择添加功能窗口,一般常用的是Debug、Breakpoints、Memory、Variables等。

GPU应用程序Attach调试记录

图 3-1选择功能窗口

选择好功能窗口后,还可以根据自己的喜好调整每个窗口的位置,如图 3-2:

GPU应用程序Attach调试记录

图 3-2窗口位置调整

3.2添加断点

点击想要添加断点的代码行,等蓝色区域出现后,直接双击即可添加一个断点。添加成功后,蓝色区域会出现一个小圆点,并且断点会立即生效,程序运行至此代码行处后会停止,而且此代码行背景色变为绿色,如图 3-3:

GPU应用程序Attach调试记录

图 3-3添加断点

3.3添加多个断点

添加方法和上个小节一样,并且在Breakpoints区可以对添加的多个断点管理,如图 3-4:

GPU应用程序Attach调试记录

图 3-4添加多个断点

3.4查看变量和寄存器

当程序运行到断点处时,可以在Variables区查看断点上下文中的变量值,如图 3-5:

GPU应用程序Attach调试记录

图 3-5查看变量

同样,在Registers区查看寄存器的值,如图 3-6:

GPU应用程序Attach调试记录

图 3-6查看寄存器

3.5恢复运行

如果想要程序再次运行到断点处,按F8即可。如果想要去掉断点运行,在Breakpoints区将断点前面的勾去掉,然后按F8即可。如图 3-7:

GPU应用程序Attach调试记录

图 3-7恢复运行


网站名称:GPU应用程序Attach调试记录
当前路径:http://scyanting.com/article/piigio.html