Caffe单步调试

来源:互联网 发布:怎么获取数组的长度 编辑:程序博客网 时间:2024/05/22 07:51

转自博客:::http://blog.csdn.net/xiaoyezi_1834/article/details/50724875

这个方法我实际用过,确实算是比较好用,相对GDB或者Qt或者eclipse要方便点。其中
GDB调试方法见博客:::http://blog.csdn.net/dengbingfeng/article/details/51469051
QT调试方法见博客:::https://www.zhihu.com/question/27987666?sort=created
eclipse调试方法见博客:::http://blog.csdn.net/mounty_fsc/article/details/51089864

Caffe也算是一个代码量比较大的工程,阅读代码过程进行调试有助于我们理解代码。
1、编译debug模式的Caffe
首先要先将Caffe编译成debug模式,即需要将Makefile.config中”DEBUG := 1”前面的注释去掉再进行重新编译,这样就能得到Caffe版本就能够调试。

2、安装IDE
要调试的话也需要一个IDE,经过这两天的摸索找到了一个比较满意的IDE:Anjuta。Anjuta在Ubuntu下的安装方法为:sudo apt-get install anjuta

3、导入caffe
安装完后打开Anjuta,然后导入Caffe项目工程,具体步骤为:
(1)import an existing project
这里写图片描述

(2) import from folder
这里写图片描述

(3)下拉选择caffe根目录,并点击打开,import。
这里写图片描述

(4)可用插件,选择默认就好。
这里写图片描述

4、设置断点
然后打开需要调试的代码文件,使用设置断点按钮(菜单栏最后面一个红绿黄的按钮)进行断点设置。

5、配置程序参数
点击“运行 -> 程序参数”,以调试训练mnist为例:
(1)在Program一栏中,选择右边的打开按钮,然后选择文件夹caffe/build/tools/下的caffe可执行文件。
(2)对于Arguments一栏,填入参数:train –solver=examples/mnist/lenet_solver.prototxt,然后点击“应用”
这里写图片描述

6、开始调试
点击“运行 -> 调试程序”,使用调试快捷键:F5(单步跨入函数)、F6(单步跨过函数)、Shift+F5(单步跨出函数)进行调试。当然,也可以设置调试器命令的。Anjuta使用方法还是比较简单的,大家查看一下菜单就能知道怎么用,不大清楚的欢迎留言咯,大家相互交流,哈哈。下面附一张我使用Anjuta调试Caffe代码的截图(左下方可以查看变量的值等,右下方是程序的运行结果)
这里写图片描述

0 0