2013-10-23 28 views
2

我知道我可以在不使用GUI的情況下使用cuda-gdb在Linux上調試CUDA,但這並不方便。我也知道如果X服務器運行在其他GPU上,可以用Nsight Eclipse版本調試CUDA。 所以我有雙GPU的筆記本電腦(geforce 525m和英特爾3000),我想知道如果我可以在英特爾卡上運行X服務器,而我的CUDA代碼在我的nvidia卡上運行?我可以以某種方式在我的Optimus筆記本電腦上的英特爾集成顯卡上運行X11,並在NVIDIA GPU上調試CUDA代碼?

+0

這不是Windows的問題,在該平臺上支持單GPU調試...我正在尋找一種可能的解決方法在Ubuntu上提供GUI調試... –

+0

當然,如果我們正在討論例如桌面系統配備單獨的NVIDIA GPU(和intel集成顯卡),那麼它可能非常簡單,只需要一個合適的'xorg.conf'文件。它可能在您的筆記本電腦上,但它取決於系統BIOS如何管理GPU硬件。在我看來,筆記本電腦的配置細節對於StackOverflow來說是無關緊要的。 –

+0

這不只是我的筆記本電腦的具體配置。許多筆記本電腦都配備了英特爾獨立顯卡的nvidia Optimus GPU。如果您知道如何爲我的筆記本電腦設置xorg.conf,那很可能也適用於其他筆記本電腦。 –

回答

0

我在回答,因爲我還沒有發表評論。

我對此不確定,但我認爲這不是Debian上的問題。 2個月前我使用的是Debian而不是Ubuntu(CUDA 5.0),並且能夠使用X服務器並使用cuda-gdb(我不確定是否可以在內核函數中進行調試,但我認爲是這樣)。

當使用CUDA 5.5更改爲Ubuntu時,我需要在文本模式下啓動Ubuntu才能在內核函數中進行調試。

所以,如果你可以嘗試,我建議嘗試與Debian。 :)

+0

你有多個GPU嗎?你使用命令行cuda-gdb進行調試,還是使用Nsight Eclipse調試器? –

+0

@OgnjenKocic,我只有一個GPU(GTX 480)。爲了調試我使用cuda-gdb,但我能夠在同一個會話上運行Profiler Nvidia Visual Profiler並調試程序(通過cuda-gdb)。 – Blufter

+0

是的,你可以剖析你的CUDA代碼以獲得更好的性能,但是你不能在計算能力低於3.5(只有少數GPU具有)的情況下使用Nsight Eclipse GUI調試器和單GPU。這已經在http://stackoverflow.com/questions/13662491/how-to-debug-cuda-using-eclipse-nsight-with-only-one-gpu回答... –

2

如果您想嘗試在筆記本電腦上進行此項工作,則應首先確保xorg.conf文件僅引用英特爾集成GPU。

然後,您需要嘗試確定當您在Linux下運行時,筆記本計算機是否正在啓動英特爾集成GPU和NVIDIA獨立GPU。對於這個測試,我將開始運行lspci如果該命令同時顯示英特爾圖形和NVIDIA GPU,那麼您可以嘗試在該點安裝CUDA工具包。當詢問您是否要更新xorg.conf文件時,請務必回答「否」。

之後,它可能只是工作。如果它不起作用,您可能需要檢查SBIOS機器配置選項,以查看是否有辦法強制啓用NVIDIA GPU和Intel圖形。

如果您能夠獲得由英特爾圖形託管的顯示器,並且加載了CUDA工具包並且可以正常工作,那麼在該GPU上調試應該沒有問題。

+0

謝謝你的所有建議。還有一件事。當我想啓動CUDA應用程序時,我需要使用optirun命令啓動它。所以在最新的bumblebee(3.2.1)中有--no-xorg選項可以確保optirun不會啓動另一個X服務器。這個選項將是我的下一個舉措。我已經轉移到Kubuntu 13.10,我會盡力讓它工作。 –

0

在我看來,這個解決方案並不好,但它可以在筆記本ASUS B400V的Ubuntu 16.04上運行。

  1. 使用開始的XServer英特爾顯卡(Nvidia公司的XServer設置或sudo prime-select intel;您需要註銷並重新登錄的)。
  2. 運行命令sudo prime-select nvidia並且沒有註銷。
  3. 運行命令sudo tee /proc/acpi/bbswitch <<< ON

執行此步驟後,我可以調試CUDA我的計劃。 重新啓動或註銷之前,您需要運行命令sudo prime-select intel

相關問題