2016-04-21 87 views
2

假設我有一臺安裝了nvcc和CUDA Toolkit的筆記本電腦,以及一個包含Nvidia GPU和MPI的16臺PC的網絡。 PC不知道CUDA,他們只有普通的Nvidia驅動程序和支持軟件。是否可以在沒有安裝CUDA驅動程序的情況下運行CUDA程序或庫?

我想爲這個網絡開發一個MPI應用程序。 PC將通過MPI獲取任務並使用GPU執行這些任務。我計劃在我的筆記本電腦上開發CUDA部分,在靜態庫中編譯它,然後使用編譯器在PC上將這個靜態庫鏈接起來。

但是,我找不到任何證據表明這種部署是可能的。相反,大多數的所謂獨立編譯require CUDA installed for the final step(與MPI感知主程序鏈接CUDA感知靜態庫)的例子:

$ g++ main.cpp -L. -lgpu -o main -L/usr/local/cuda/lib64 -lcudart 

那麼,是不是可以編譯使用CUDA程序或庫並沒有像安裝的驅動程序和CUDA庫的任何依賴關係?

+0

簡短的回答是:您將不得不部署運行時DLL以及可執行文件 –

+0

奇怪的是,cuda計算資源集羣沒有部署cuda運行時。 – user3528438

+0

@RegisPortalez感謝您的回覆。所以至少我不必爲目標機器安裝新的視頻驅動程序;缺少依賴關係的dll就足夠了。我是否正確? – Vovanrock2002

回答

2

如果您將cuda運行時動態庫與您的可執行文件一起部署,一切都應該有效。

同時,確保在目標機器上安裝了最新的驅動程序。

+0

我想補充一點,如果您的NVCC選項指定了所需的最小計算能力,您必須確保目標計算機具有足夠的計算能力。 – Taro

相關問題