GPU应用程序Attach调试记录-创新互联

1.前期工作

鄂城ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

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恢复运行

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:GPU应用程序Attach调试记录-创新互联
网站地址:http://hbruida.cn/article/dopiss.html