(Caffe,LeNet)IDE单步调试(一)

本文地址:http://blog.csdn.net/mounty_fsc/article/details/51089864

1 运行范例脚本train_lenet.sh

Ubuntu下终端行执行train_lenet.sh可训练lenet-5(详细情况参考其他教程),能直观地看到lenet训练起来带情况。
train_lenet.sh中内容为:

./build/tools/caffe train –solver=examples/mnist/lenet_solver.prototxt

注:– 为两个- -,cndn显示问题

涉及到程序caffe以及文件lenet_solver.prototxt两个文件。因而在输入参数带情况下调试caffe.

2 Cuda相关问题

若不考虑调式cuda代码,以下内容忽略

  1. Ubuntu下使用Eclipse调式caffe代码,主要为两个IDE,一个是Eclipse CDT,另一个是Nsight Eclipse Edition

    • Eclipse CDT:用来开发C/C++,本文介绍这种方法
    • Nsight Eclipse Edition:安装cuda自带的IDE,由于caffe中涉及cuda相关的代码,如果需要调式cuda代码,且能使用Nsight Eclipse Edition调式的话,这个是最好的选择。
  2. 一般PC使用Nsight会面临一个问题:

    all cuda devices are used for display and cannot be used while debugging

    • Ubuntu下图形界面调式cuda,单显卡不能同时用于显示和调式。
    • Win 7下不存在这样的问题
  3. 解决这个问题的方法有:

    • 不使用图形界面来进行调式cuda,意味着不使用Nsight
    • 不在本机调式,使用Nsight remote debug的功能
    • cuda 5.5以上,显卡计算能力3.5以上,否则必须一个显卡显示,一个显卡计算。参考资料好下:

      1. https://devblogs.nvidia.com/parallelforall/cudacasts-episode-4-single-gpu-debugging-cuda-5-5/
      2. 视频https://www.youtube.com/watch?v=nKKLqc2TgsI(need tool, you know)
    • 不知有没有其他巧妙方法,若有,求共享…

3 Eclipse单步调试代码

eclipse导入caffe项目教程详见:http://blog.csdn.net/yaoxingfu72/article/details/47999795
在eclipse中打开caffe项目,配置调试器如下

1. Debug As -> Debug Configurations..

(Caffe,LeNet)IDE单步调试(一)_第1张图片

2. 设置调试带程序,以及运行时参数

(Caffe,LeNet)IDE单步调试(一)_第2张图片(Caffe,LeNet)IDE单步调试(一)_第3张图片

3. 点击图像右下角debug进行调试
其中build/tools/caffe对应带源代码在tools/caffe.cpp中

(Caffe,LeNet)IDE单步调试(一)_第4张图片

4. 配置cuda头文件路径
若不配置,在eclipse中会出现找不到cuda相关带文件错误。

(Caffe,LeNet)IDE单步调试(一)_第5张图片

5. 让Eclipse识别cuda源文件

(Caffe,LeNet)IDE单步调试(一)_第6张图片

4 Clion导入Caffe项目

Clion是Jetbrain开发的面向C/C++的一款优秀IDE,其导入流程见参考[1]

[1]. http://blog.csdn.net/xuanwu_yan/article/details/51731132

你可能感兴趣的:(Caffe,LeNet)