1. 程式人生 > >Linux下Caffe如何除錯

Linux下Caffe如何除錯

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程式碼的截圖(左下方可以檢視變數的值等,右下方是程式的執行結果)