要在CentOS上使用GCC編譯器支持CUDA加速,你需要安裝NVIDIA CUDA Toolkit和相應的驅動程序。以下是詳細步驟:
首先,確保你的系統上安裝了兼容的NVIDIA顯卡驅動程序。你可以從NVIDIA官方網站下載并安裝最新的驅動程序。
# 添加EPEL倉庫
sudo yum install epel-release
# 安裝NVIDIA驅動程序
sudo yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)
sudo yum install nvidia-driver-latest-dkms
重啟系統以應用驅動程序:
sudo reboot
從NVIDIA官方網站下載適用于CentOS的CUDA Toolkit安裝包,并按照說明進行安裝。
# 下載CUDA Toolkit安裝包(假設下載的是cuda_11.8.0_515.43.04_linux.run)
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_515.43.04_linux.run
# 運行安裝程序
sudo sh cuda_11.8.0_515.43.04_linux.run
# 按照提示完成安裝
在安裝過程中,選擇需要的組件,通常情況下,選擇安裝CUDA Toolkit和驅動程序即可。
安裝完成后,需要配置環境變量以便GCC能夠找到CUDA庫和頭文件。
編輯~/.bashrc文件,添加以下內容:
export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
使環境變量生效:
source ~/.bashrc
使用GCC編譯CUDA程序時,需要指定CUDA頭文件和庫文件的路徑。假設你的CUDA源文件名為example.cu,可以使用以下命令進行編譯:
gcc -o example example.cu -I/usr/local/cuda-11.8/include -L/usr/local/cuda-11.8/lib64 -lcudart
編譯完成后,可以使用以下命令運行CUDA程序:
./example
以下是一個簡單的CUDA示例代碼,用于驗證CUDA是否正常工作:
#include <stdio.h>
__global__ void helloCUDA() {
printf("Hello from CUDA!\n");
}
int main() {
helloCUDA<<<1, 1>>>();
cudaDeviceSynchronize();
return 0;
}
保存為hello.cu,然后使用以下命令編譯和運行:
gcc -o hello hello.cu -I/usr/local/cuda-11.8/include -L/usr/local/cuda-11.8/lib64 -lcudart
./hello
如果一切正常,你應該會看到輸出:
Hello from CUDA!
通過以上步驟,你可以在CentOS上使用GCC編譯器支持CUDA加速。