Windows搭建cuda開發環境
CUDA(Compute Unified Device Architecture,統一計算架構)是由英偉達所推出的一種整合技術,向用戶提供了可以很優雅地呼叫GPU進行平行計算的程式設計介面。
然而對於很多剛接觸這門技術的人來說,怎麼把一個簡單的cuda程式跑起來卻也是一個“說大不大,說小不小”的問題。我大致整理出了在Windows上搭建cuda開發環境的方案,勉勉強強可以被當作一份參考。
此處我的目標主要為:完成對簡單CUDA C
程式的編譯和執行。
當然,要搭建一個真實的cuda開發環境,得先確保自己電腦是支援cuda的。(安裝了英偉達顯示卡的應該都沒問題)
命令列編譯
-
首先去英偉達官網下載一個
-
安裝完成後,試試
nvcc -V
檢視是否是否能正常使用nvcc,如果不能的話,去環境變數中檢查一下類似C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\bin\
這樣的值有沒有被加到Path
裡,如果沒有的話記得手動加一下(記得使用自己的真實的CUDA工具包的安裝位置,不要直接複製我這裡的)。新增完成後記得要重新開啟一個cmd或shell才能正常載入。 -
建立一個cuda程式
hello.cu
,參考程式附於文末;在當前目錄使用nvcc -o hello hello.cu
hello.exe
,hello.exp
,hello.lib
這幾個檔案。但通常來說,這裡會出現找不到cl
的情況。-
如果沒有安裝
Visual Studio
的話,先安裝一個 -
找到cl.exe的位置,並將該目錄加入到環境變數
Path
中,我這裡給出一個參考:D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\Hostx64\x64
-
使用Visual Studio
-
首先如果沒有安裝VC的話當然是需要先安裝一個,至於安裝的時候具體要選哪些模組,我現在也還不是很清楚,也沒來得及去驗證。
-
當然
-
進到VS中建立一個
CUDA Runtime
專案 -
給專案配置CUDA工具包路徑
-
點選
Project
,然後點選 -
點選
[專案名] Properties
-
-
附:CUDA HelloWorld
#include <stdio.h> __global__ void cuda_hello(){ printf("Hello World from GPU!\n"); } int main() { cuda_hello<<<1,1>>>(); return 0; }