在Ubuntu 20.04上,使用deb方式安装CUDA 12和cuDNN的大致步骤如下:
- 安装CUDA Toolkit 12.0。
- 安装cuDNN库。
- 验证安装。
安装CUDA Toolkit 12.0
首先,前往NVIDIA官方网站下载CUDA Toolkit 12.0的deb安装包。
然后,在终端中运行以下命令安装CUDA Toolkit:
sudo dpkg -i cuda-repo-<distro>_<version>_amd64.deb # 安装CUDA仓库
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/<distro>/x86_64/7fa2af80.pub # 导入公钥
sudo apt-get update # 更新软件包列表
sudo apt-get install cuda # 安装CUDA Toolkit
安装cuDNN库
前往NVIDIA官方网站下载与CUDA 12.0对应的cuDNN库。你需要注册并登录NVIDIA账户才能下载。
下载后,在终端中运行以下命令解压并安装cuDNN:
tar -xzvf cudnn-<version>-linux-x64-v<version>.tgz # 解压cuDNN压缩包
sudo cp cuda/include/cudnn*.h /usr/local/cuda/include # 头文件
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 # 库文件
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn* # 设置权限
验证安装
为了验证CUDA和cuDNN是否安装成功,你可以编写一个简单的CUDA程序来运行一些CUDA操作,比如创建一个CUDA设备(GPU),并检查它是否返回了一个有效的设备。
以下是一个简单的CUDA程序示例,它会尝试初始化CUDA环境并检查设备:
// test_cuda.cu
#include <cuda_runtime.h>
#include <iostream>
int main() {
int deviceCount = 0;
cudaError_t cudaResult = cudaGetDeviceCount(&deviceCount);
if (cudaResult != cudaSuccess) {
std::cerr << "CUDA Runtime Error: " << cudaGetErrorString(cudaResult) << std::endl;
return 1;
}
if (deviceCount == 0) {
std::cout << "There is no device." << std::endl;
} else {
std::cout << "Found " << deviceCount << " device(s)." << std::endl;
}
return 0;
}
编译这个程序需要使用NVCC编译器,它是CUDA的编译工具:
nvcc test_cuda.cu -o test_cuda
运行编译后的程序:
./test_cuda
如果一切正常,你应该能看到输出显示了可用的CUDA设备数量。如果系统没有检测到任何设备,或者CUDA运行时错误,那么可能是安装出了问题。