環境準備
確保在本地和遠程Linux服務器上安裝了以下軟件:
- Visual Studio Code(簡稱VS Code)
- Remote Development extension pack for VS Code
- CUDA Toolkit,推薦版本為11.0或更高
- GCC編譯器,用于C++代碼的編譯
此外,需要在遠程服務器上配置SSH訪問權限。
步驟一:配置VS Code遠程連接
- 打開VS Code,點擊左側活動欄中的遠程資源管理器圖標。
- 選擇“Connect to Host…”并輸入遠程Linux服務器的SSH連接信息。
- 成功連接后,在VS Code中打開一個文件夾作為工作區。
步驟二:創建CUDA C++項目
- 在工作區中創建新文件,并命名為
hello_world.cu
。 - 編寫如下示例代碼實現CPU與GPU同時打印Hello World:
#include <stdio.h>__global__ void print_hello_from_gpu()
{printf("Hello World from GPU!\n");
}int main()
{printf("Hello World from CPU!\n");// 調用GPU函數print_hello_from_gpu<<<1, 1>>>();cudaDeviceSynchronize();return 0;
}
步驟三:通過命令行編譯CUDA程序
- 打開VS Code集成終端,確保當前工作目錄為包含
hello_world.cu
的項目目錄。 - 使用
nvcc
命令編譯CUDA程序。在終端中輸入以下命令以編譯上述CUDA C++代碼:
nvcc hello_world.cu -o hello_world
這將生成名為hello_world
的可執行文件。
步驟四:運行編譯后的程序
- 在同一終端窗口中,通過輸入以下命令運行編譯后的程序:
./hello_world
預期輸出應為:
Hello World from CPU!
Hello World from GPU!
注意,由于CUDA程序依賴于NVIDIA GPU及其驅動程序,確保目標機器上已正確安裝相應的硬件和軟件環境。