Ubuntu 20.04(linux) cuda(12)+cudnn的deb方式安装以及验证(宝宝也适用哟)

在Ubuntu 20.04上,使用deb方式安装CUDA 12和cuDNN的大致步骤如下:

  1. 安装CUDA Toolkit 12.0。
  2. 安装cuDNN库。
  3. 验证安装。

安装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运行时错误,那么可能是安装出了问题。

最后修改于:2024年08月16日 11:19

评论已关闭

推荐阅读

DDPG 模型解析,附Pytorch完整代码
2024年11月24日
DQN 模型解析,附Pytorch完整代码
2024年11月24日
AIGC实战——Transformer模型
2024年12月01日
Socket TCP 和 UDP 编程基础(Python)
2024年11月30日
python , tcp , udp
如何使用 ChatGPT 进行学术润色?你需要这些指令
2024年12月01日
AI
最新 Python 调用 OpenAi 详细教程实现问答、图像合成、图像理解、语音合成、语音识别(详细教程)
2024年11月24日
ChatGPT 和 DALL·E 2 配合生成故事绘本
2024年12月01日
omegaconf,一个超强的 Python 库!
2024年11月24日
【视觉AIGC识别】误差特征、人脸伪造检测、其他类型假图检测
2024年12月01日
[超级详细]如何在深度学习训练模型过程中使用 GPU 加速
2024年11月29日
Python 物理引擎pymunk最完整教程
2024年11月27日
MediaPipe 人体姿态与手指关键点检测教程
2024年11月27日
深入了解 Taipy:Python 打造 Web 应用的全面教程
2024年11月26日
基于Transformer的时间序列预测模型
2024年11月25日
Python在金融大数据分析中的AI应用(股价分析、量化交易)实战
2024年11月25日
AIGC Gradio系列学习教程之Components
2024年12月01日
Python3 `asyncio` — 异步 I/O,事件循环和并发工具
2024年11月30日
llama-factory SFT系列教程:大模型在自定义数据集 LoRA 训练与部署
2024年12月01日
Python 多线程和多进程用法
2024年11月24日
Python socket详解,全网最全教程
2024年11月27日