【CUDA學習】核心程式除錯

一點心青發表於2013-07-25

除錯工具 cuda-gdb,網上有英文版的說明文件。

其中大部分除錯命令和gdb的除錯命令相同。

cuda程式分為主機端程式和裝置端程式,主機端程式除錯也就是C語言程式的除錯

主要是裝置端程式,關鍵點也就是如何進入裝置端程式。

除錯時,編譯選項 -g  -G

-g     說明程式是Debug版, -G生成相應的裝置端程式碼

進入裝置端程式,需要在裝置端入口程式設定斷點

大致的流程如下:

break    test_kernel

thread <<<N>>>  (進入單個執行緒)

接下來就可以按C語言程式的方法進行除錯

在裝置端程式時,有些變數的值不能列印出來

這些變數儲存在視訊記憶體中,無法列印

基本方法:選擇編譯選項,設定斷點,進入裝置端程式,選擇單個執行緒,按C語言程式的方法進行除錯。

相關文章