ubuntu 24.04 安装 Nvidia 显卡驱动 + CUDA + cuDNN,配置 AI 深度学习训练环境,简单易懂,一看就会!

ubuntu 24.04 安装 Nvidia 显卡驱动 + CUDA + cuDNN,配置 AI 深度学习训练环境,简单易懂,一看就会!

1.查看本机显卡型号
lspci | grep -i nvidia

输出如下:

01:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 920MX] (rev a2)

其中,GeForce 920MX就是我们的显卡型号。

2.下载 Nvidia 显卡驱动

官网:点击此处下载NVIDIA驱动

根据显卡型号搜索驱动:

在这里插入图片描述

选择查找

在这里插入图片描述

下载最新版驱动

在这里插入图片描述

3.安装显卡驱动

安装编译环境

sudo apt update
sudo apt install gcc make

运行安装程序

chmod +x NVIDIA-Linux-x86_64-560.31.02.run
sudo ./NVIDIA-Linux-x86_64-560.31.02.run

选择“Continue installation”,回车

在这里插入图片描述

进入编译中…

在这里插入图片描述

注意:在这里编译时会出现编译错误而中断,原因是下载的显卡驱动是最新的,需要用较高的 gcc 版本编译器来编译,默认 gcc 的版本是 11,小于编译所需要的 12 版本。因此需要安装 12 版本的,并调整 gcc 链接。

sudo apt install gcc-12
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/x86_64-linux-gnu-gcc-12 20

重新运行安装程序:

sudo ./NVIDIA-Linux-x86_64-560.31.02.run

编译通过后,接着运行到下面这里,选择“Yes”

在这里插入图片描述

安装过程中,会提示是否禁用 nouveau 驱动,选择是,NVIDIA 会自动屏蔽 nouveau 驱动,不用手动禁止。

在安装过程中,没有不是特别要求的话,提示选择是否的话,可以都选择“是”。

在这里插入图片描述

终端运行nvidia-smi

输出如下,可以查看到版本号和显存:

在这里插入图片描述

安装完成,重启。

4.CUDA 安装

查看显卡支持的 CUDA 版本

nvidia-smi

输出如下:

在这里插入图片描述

CUDA 最高可用版本为 12.6

到官网下载 CUDA:https://developer.nvidia.com/cuda-toolkit-archive

注意:CUDA 需要注册登录 NVIDIA 官网才能下载。

在这里插入图片描述

选择 12.6 版本以下的都可,最高版本可选择 12.6,根据系统版本选择相应的项:

在这里插入图片描述

得到下载地址和运行命令:

在这里插入图片描述

这里是:

wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.runsudo sh cuda_12.2.2_535.104.05_linux.run

这里以 CUDA Toolkit 12.2.2为例安装:

chmod +x cuda_12.2.2_535.104.05_linux.run 
sudo ./cuda_12.2.2_535.104.05_linux.run 

选择“Continue”

在这里插入图片描述

输入“accept”

在这里插入图片描述

取消“Driver”选项,因为已经安装过显卡驱动了, 这里不需要安装,然后选择“Install”。

在这里插入图片描述

等待安装完成。

配置环境

nano ~/.bashrc

在文件最后添加以下内容:

export PATH=$PATH:/usr/local/cuda-12.2/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-12.2/lib64 

重载配置

source ~/.bashrc

检查安装

nvcc -V

输出如下,则安装成功:

在这里插入图片描述

5.安装 cuDNN

官网下载:https://developer.nvidia.com/rdp/cudnn-download

在这里插入图片描述

选择相应项后会生成下载命令:

wget https://developer.download.nvidia.com/compute/cudnn/9.3.0/local_installers/cudnn-local-repo-ubuntu2404-9.3.0_1.0-1_amd64.debsudo dpkg -i cudnn-local-repo-ubuntu2404-9.3.0_1.0-1_amd64.debsudo cp /var/cudnn-local-repo-ubuntu2404-9.3.0/cudnn-*-keyring.gpg /usr/share/keyrings/sudo apt-get updatesudo apt-get -y install cudnn

一般最新版本的显卡驱动都能适配最新版本的 cuDNN,若最新版本不适合当前的 CUDA,可以安装历史版本。

cuDNN 最新版本支持的 CUDA 查看:Support Matrix — NVIDIA cuDNN v9.3.0 documentation

在这里插入图片描述

查找 cuDNN 支持的 CUDA 的历史版本:

在这里插入图片描述

在这里插入图片描述

选择"cuDNN 8.x-1.x"

在这里插入图片描述

然后选择适应的版本下载deb包安装即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/402197.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言常用的内存函数

在上一篇博客中我为大家分享了一些常用的字符串函数,以及它们的用法和模拟实现。通过字符串函数中的strcpy,我们能够做到将一个字符串中的内容拷贝到另一个字符串上,可如果有一天我们想把一个整型数组中的内容拷贝到另一个整型数组中呢&#…

KV存储之ETCD

ETCD 是一种分布式键值存储系统,主要用于分布式系统中的配置管理、服务发现和分布式协调。它由 CoreOS 团队开发,现在是 CNCF(云原生计算基金会)托管的一个开源项目。ETCD 在设计时非常注重一致性、可用性和性能,通常被…

Eclipse的使用配置教程:必要设置、创建工程及可能遇到的问题(很详细,很全面,能解决90%的问题)

Eclipse的使用配置: Ⅰ、Eclipse 的必要配置:1、Eclipse 的安装:其一、将 Eclipse 解压或安装到没有中文且没有空格的路径下。其二、拿到 eclipse.exe 文件,傻瓜式安装即可; 2、设置工作空间(workspace):其一、首次启动…

C程序设计——基本变量类型(指针杂谈)

瞎聊 本文后面的内容,可以暂时看不懂,以后如果从事这一行,慢慢会理解,但是这句话要记住:如果 piInt 是一个指向整型的指针变量,那么 *piInt 就是一个整型变量;类似的,如果pcChar是…

原生微信小程序笔记完整总结4.0

🤹‍♀️潜意识起点:个人主页 🎙座右铭:得之坦然,失之淡然。 💎擅长领域:大前端 是的,我需要您的: 🧡点赞❤️关注💙收藏💛 是我…

【MySQL】事务管理

【MySQL】事务管理 什么是事务为什么要有事务事务的版本支持事务的提交方式事务的常见操作事务的隔离级别如何理解隔离性隔离级别隔离级别的设置与查看读未提交【Read Uncommitted】读提交【Read Committed】可重复读【Repeatable Read】串行化【serializable】一致性(Consiste…

代码随想录算法训练营43期 | Day 14——226.翻转二叉树、101. 对称二叉树、104.二叉树的最大深度、二叉树最小深度

代码随想录算法训练营 226.翻转二叉树101. 对称二叉树递归法 104.二叉树的最大深度二叉树最小深度 226.翻转二叉树 leetcode链接 思路: 递归三部曲: 确定递归函数的参数和返回值确定终止条件确定单层递归的逻辑 递归法 TreeNode* invertTreeNode(Tree…

并发系统的 CSP+PAT 形式化建模与验证方法(以Kafka系统为例)

消息队列中间件是分布式系统的重要组成部分。它允许应用程序仅关注数据本身,而无需关心数据传输的具体细节。这一特性有效解决了消息异步传输、应用程序解耦以及流量削峰等问题。Kafka是一个开源的分布式消息系统,它基于发布-订阅模型构建。Kafka具有低延…

Unity使用代码生成ScriptableObject数据并赋值之后,重启数据就没有啦!

2024年8月14日早,因数据持续化存储,重启电脑后数据会丢失,而我找不到原因被领导质疑了,故写一片博客记录这个错误。 省流 使用在编辑器的play模式中为ScriptableObject赋值之后,需要使用 #if UNITY_EDITORUnityEdit…

Codeforces Round 495 (Div. 2) F. Sonya and Bitwise OR(线段树)

原题链接:F. Sonya and Bitwise OR 题目大意: 给出一个长度为 n n n 的数组 a a a,并给出 m m m 次询问以及一个数字 x x x。 每个询问形式如下给出: 1 1 1 i i i y y y :将 a i a_{i} ai​ 位置的值更改为 y…

数据库分库分表的介绍

为什么要分库分表 把存于一个库的数据分散到多个库中,把存于一个表的数据分散到多个表中。如果说读写分离是为了分散数据库读写操作压力,分库分表就是为了分散存储压力,一般情况下,单表数据量到达千万级别,就可以考虑…

基于飞腾平台的Hbase的安装配置

【写在前面】 飞腾开发者平台是基于飞腾自身强大的技术基础和开放能力,聚合行业内优秀资源而打造的。该平台覆盖了操作系统、算法、数据库、安全、平台工具、虚拟化、存储、网络、固件等多个前沿技术领域,包含了应用使能套件、软件仓库、软件支持、软件适…

支持S/MIME证书的邮件客户端有哪些?

S/MIME证书,也叫做邮件安全证书,支持安全/多用途互联网邮件扩展协议(S/MIME协议),是通过加密和数字签名来确保电子邮件的安全性、保密性和完整性的数字证书。GDPR、HIPAA、FDA等多个行业都要求邮件发送方在发送邮件时对…

基于R语言遥感随机森林建模与空间预测;遥感数据处理与特征提取;数据分析与可视化

目录 第一章 理论基础与数据准备【夯实基础】 第二章 随机森林建模与预测【讲解实践】 第三章 实践案例与项目 更多应用 随机森林作为一种集成学习方法,在处理复杂数据分析任务中特别是遥感数据分析中表现出色。通过构建大量的决策树并引入随机性,随…

C++ 特殊类设计以及单例模式

目录 1 不能被拷贝 2 只能在堆上创建对象 3 只能在栈上创建对象 4 禁止在堆上创建对象 5 不能被继承的类 6 单例类 特殊类就是一些有特殊需求的类。 1 不能被拷贝 要设计一个防拷贝的类,C98之前我们只需要将拷贝构造以及拷贝赋值设为私有,同时只声明…

RTX 4070 GDDR6显存曝光:性能与成本的平衡之选

近期,关于NVIDIA RTX 4070新显卡的信息曝光,这款显卡将配备较为缓慢的GDDR6显存,而非更高性能的GDDR6X。这一配置的选择引发了业内的广泛关注,特别是在性能与成本的平衡问题上。 新版RTX 4070 OC 2X的核心特点 **1.显存类型与带…

8B 端侧小模型 | 能力全面对标GPT-4V!单图、多图、视频理解端侧三冠王,这个国产AI开源项目火爆全网

这两天, Github上一个 国产开源AI 项目杀疯了!一开源就登上了 Github Trending 榜前列,一天就获得将近600 star。 这个项目就是国内大模型四小龙之一面壁智能最新大打造的面壁「小钢炮」 MiniCPM-V 2.6 。它再次刷新端侧多模态天花板&#xf…

微分方程求解的三种解析方法:经典时域法(齐次解+特解,零状态+零输入),冲激响应卷积法、传递函数法

经典时域分析方法 以例题的形式对经典时域解法(齐次解特解)进行说明,最后进行总结。考虑如下形式微分方程: y ′ ′ ( t ) 5 y ′ ( t ) 6 y ( t ) 2 f ′ ( t ) 6 f ( t ) y\left( t \right) 5y\left( t \right) 6y\left(…

pyinstaller使用

pyinstaller 入门 Pyat5 的安装程序开发PyQt6 的安装程序开发 编写好的程序编译成可执行文件资源文件:用 zip 打包,基本可以压缩到 1/3 大小;然后再用 pyqt 写一个 setup 安装程序,安装到指定目录(安装的过程实际就是把文件解压、拷贝到指定目录、注册到…

[000-01-030].第2节 :Zookeeper本地安装

1.Zookeeper下载地址 1.Zookeeper官网地址 2.会显示Zookeeper的一些版本 2.Zookeeper本地模式安装: 2.1.Zookeeper安装前准备 1.在Centos7虚拟机中安装jdk8 2.2.Zookeeper安装过程: 1.下载zookeeper压缩版本,解压放在opt/moduel目录下…