当前位置: 首页 > news >正文

Ubuntu24.04安装NVIDIA驱动及工具包

Ubuntu24.04安装NVIDIA驱动及工具包

  • 安装nvidia显卡驱动
  • 安装cuda驱动
  • 安装cuDNN
  • 安装Anaconda

安装nvidia显卡驱动

NVIDIA 驱动程序(NVIDIA Driver)是专为 NVIDIA 图形处理单元(GPU)设计的软件,它充当操作系统与硬件之间的桥梁,使得计算机能够正确识别和使用 GPU 的功能。驱动程序对于确保 GPU 的稳定运行、性能优化以及支持最新的图形技术至关重要。以下是 NVIDIA 驱动程序的一些关键点:

  1. 硬件兼容性:NVIDIA 驱动程序确保了 GPU 可以被操作系统正确识别,并提供必要的接口来让应用程序和游戏与 GPU 进行交互。

  2. 性能优化:新的驱动程序版本通常包含性能改进,可以提高游戏帧率或加速专业应用中的图形渲染和其他计算任务。

  3. 功能更新:随着新技术的发展,如实时光线追踪、DLSS(深度学习超级采样)、Reflex 等,NVIDIA 会通过驱动程序更新来引入这些新功能的支持。

  4. 稳定性修复:驱动程序更新经常包含对已知问题的修复,以提高系统的整体稳定性和可靠性。

  5. 安全更新:有时,驱动程序更新也会解决可能存在的安全漏洞,保护用户免受潜在的安全威胁。

  6. 兼容性:不同的驱动程序版本可能适用于特定的操作系统版本(例如 Windows 或 Linux),并且需要与特定型号的 NVIDIA GPU 兼容。

  7. Game Ready Drivers:针对即将发布或已经发布的热门游戏,NVIDIA 会推出 Game Ready Drivers,这类驱动经过特别优化,以确保最佳的游戏体验。

  8. Studio Drivers:面向创作者和专业人士,NVIDIA 提供 Studio Drivers,这些驱动经过认证,以确保在创意应用(如 Adobe Premiere Pro、Blender 等)中提供稳定的性能和兼容性。

ubuntu 24.04与nvidia有专门的支持,若通过到nvidia官网下载的版本来安装,不能使用,需要通过系统的软件和升级功能来安装 ,Additional Drivers,选择一个版本来安装。
在这里插入图片描述
安装成功后,在terminal中执行nvidia-smi,正常显示显卡的信息

在这里插入图片描述

安装cuda驱动

CUDA(Compute Unified Device Architecture)是 NVIDIA 推出的并行计算平台和应用程序接口(API)。它允许软件开发者通过使用 CUDA C、CUDA C++ 或其他支持 CUDA 的语言和工具,直接利用 NVIDIA 图形处理单元(GPU)进行通用计算(GPGPU, General Purpose computing on GPU)。CUDA 使开发者可以编写程序来执行复杂的计算任务,如图像处理、视频编码、科学模拟、深度学习等,并将这些任务分配给 GPU 处理,从而加速计算过程。

CUDA 的核心特性包括:

  1. 线程层次结构:CUDA 将计算任务分解为多个线程块(blocks),每个线程块又包含多个线程(threads)。线程之间可以在同一块内协作,并且线程块可以被组织成一维、二维或三维网格(grid)。

  2. 内存模型:CUDA 提供了不同类型的内存,包括全局内存、共享内存、常量内存和纹理内存等。每种内存类型都有其特定的访问特性和用途,以优化数据传输和存储。

  3. 指令集架构:CUDA 提供了一组专门针对 GPU 并行计算设计的指令,使得开发者能够更好地控制硬件资源。

  4. 库和工具:NVIDIA 提供了一系列的库(如 cuBLAS、cuFFT 等)和开发工具(如Nsight、CUDA-GDB等),用于简化编程和调试过程。

  5. 兼容性与扩展性:随着 GPU 架构的发展,CUDA 不断更新以支持新的硬件特性,并保持向后兼容旧版本的代码。

要使用 CUDA,通常需要安装 CUDA Toolkit,这是一个包含了编译器、库和工具的软件包,用于开发和优化基于 CUDA 的应用。此外,运行 CUDA 应用程序还需要一台配备了支持 CUDA 技术的 NVIDIA GPU 的计算机。

通过apt来安装

sudo apt install nvidia-cuda-toolkit

安装成功后,执行nvcc -V 来确认。
在这里插入图片描述

安装cuDNN

CuDNN(CUDA Deep Neural Network library)是 NVIDIA 提供的一个用于深度神经网络的 GPU 加速库。它旨在为深度学习开发者提供高性能的构建模块,简化并加速深度学习应用的开发过程。CuDNN 是 CUDA 的一部分,它优化了深层神经网络中最常用的原语(primitives),如卷积、池化、激活函数和归一化等操作。

CuDNN 的主要特点包括:

  1. 性能优化:CuDNN 针对 NVIDIA GPU 进行了高度优化,能够显著加快训练和推理的速度。它利用了 GPU 的并行计算能力,并针对不同型号的 GPU 优化了算法实现。

  2. 易用性:通过提供简单易用的 API,CuDNN 使得开发者可以轻松地将高效的深度学习操作集成到他们的应用程序中,而无需深入了解底层硬件细节或编写复杂的 CUDA 代码。

  3. 广泛的框架支持:大多数流行的深度学习框架(如 TensorFlow、PyTorch、Caffe 等)都内置了对 CuDNN 的支持,这意味着用户可以在这些框架中直接使用 CuDNN 来加速模型训练和推理。

  4. 自动调优:CuDNN 能够根据不同的网络结构和数据类型自动选择最优算法,以确保最佳性能。对于某些操作,它还可以在运行时动态调整参数,进一步提升效率。

  5. 跨平台兼容性:尽管 CuDNN 主要设计用于 Linux 和 Windows 操作系统上的 NVIDIA GPU,但它也提供了 Docker 容器镜像等形式的支持,方便开发者在多种环境中部署深度学习应用。

为了使用 CuDNN,你需要先安装 CUDA Toolkit,然后下载并安装与你的 CUDA 版本相匹配的 CuDNN 库。安装完成后,你就可以在你的深度学习项目中启用 CuDNN 支持,从而享受 GPU 加速带来的性能提升。

到官网下载https://developer.nvidia.com/cudnn-downloads

选择对应的平台版本等,页面会显示对应步骤,按照步骤执行。
在这里插入图片描述

wget https://developer.download.nvidia.com/compute/cudnn/9.6.0/local_installers/cudnn-local-repo-ubuntu2404-9.6.0_1.0-1_amd64.deb
sudo dpkg -i cudnn-local-repo-ubuntu2404-9.6.0_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-ubuntu2404-9.6.0/cudnn-*-keyring.gpg /usr/share/keyrings/
sudo apt update
sudo apt -y install cudnn
# 如果安装的是CUDA 11,那么执行如下
sudo apt -y install cudnn-cuda-11
# 如果安装的是CUDA 12,那么执行如下
sudo apt -y install cudnn-cuda-12

安装Anaconda

从中国科学技术大学 https://mirrors.ustc.edu.cn/anaconda/archive/ 下载相应版本。

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --set show_channel_urls yes

相关文章:

Ubuntu24.04安装NVIDIA驱动及工具包

Ubuntu24.04安装NVIDIA驱动及工具包 安装nvidia显卡驱动安装cuda驱动安装cuDNN安装Anaconda 安装nvidia显卡驱动 NVIDIA 驱动程序(NVIDIA Driver)是专为 NVIDIA 图形处理单元(GPU)设计的软件,它充当操作系统与硬件之间…...

【每日学点鸿蒙知识】组件封装通用方法、callback和await性能对比、Web组件下拉刷新、hsp包报错、WebView圆角

1、HarmonyOS 自定义的组件如何封装一些通用的属性和方法,例如 Java 中的继承? export class Animal{name:stringage:stringconstructor(name:string,age:string) {this.name namethis.age age} }export class Person extends Animal{reading:stri…...

Excel批量设置行高,Excel表格设置自动换行后打印显示不全,Excel表格设置最合适的行高后打印显示不全,完美解决方案!!!

文章目录 说个问题(很严重!!!)写个方案会Python看这里Python环境搭建不存在多行合并存在多行合并 不会Python看这里 说个问题(很严重!!!) 平时处理Excel表格…...

Web Bluetooth API 开发记录

搞了一天的蓝牙串口协议被几个软件和AI带沟里面去了。 1.00001101-0000-1000-8000-00805f9b34fb 是spp协议。但是我用的称是使用的49535343-fe7d-4ae5-8fa9-9fafd205e455蓝牙低功耗spp协议 2.推荐一款软件Android-nRF-Connect github地址:https://github.com/Nor…...

python基础知识(二)

元组 元组与列表类似,不同之处在于,元组的元素不能修改,元组使用()。 集合 集合是一个无序且不重复的元素列表。 基本功能是 进行成员关系测试和删除重复元素。 创建集合使用大括号或者set()函数。 例子: 注意:创建一…...

【每日学点鸿蒙知识】初始化BigInt、包体积瘦身、Tabs嵌套Grid、老年化适配、Release打包失败

1、HarmonyOS 在一个类中,怎么初始化一个BigInt类型的属性? 可以通过BigInt关键字来初始化,如: let a BigInt(1); let b BigInt("2"); 关于Uint8Array与string互转,示例: // string 转Uint8…...

Android service framework笔记

1. 网络摘录如何添加一个Application Framework Service(一)(without native code) 如何添加一个Application Framework Service(二)(with native code) 2.书籍摘录...

安全攻防:中间人攻击

1. 中间人攻击定义 中间人攻击(简称MITM)是攻击者在进行网络通信的双方中间,分别与两端建立独立的联系,并进行数据嗅探甚至篡改,而通信的双方却对中间人毫不知情,认为自己是直接在与对端通信。2. 常见中间人…...

【Rust自学】7.3. use关键字 Pt.1:use的使用与as关键字

喜欢的话别忘了点赞、收藏加关注哦,对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 7.3.1. use的作用 use的作用是将路径导入到当前作用域内。而引入的内容仍然是遵守私有性原则,也就是只有公共的部分引入进来才…...

变长的时间戳(第4版)

以32位为单位,一个时间戳可以是32位、64位、96位。 122932 113032 A类:(40036597)1000146097000≤229 B类:246060100086400000≤229 C类:1000100010001000000000≤230 每400年有40036597146097天,A类时间戳能表达1000…...

Intent--组件通信

组件通信1 获取子活动的返回值 创建Activity时实现自动注册!【Activity必须要注册才能使用】 默认 LinearLayout 布局,注意 xml 中约束布局的使用; 若需要更改 线性布局 只需要将标签更改为 LinearLayout 即可,记得 设置线性布局…...

Android14 OTA升级速度过慢问题解决方案

软件版本:Android14 硬件平台:QCS6115 问题:OTA整包升级接近20min,太长无法忍受。 该问题为Android高版本的虚拟AB分区压缩技术所致,其实就是时间换空间,个人推测AB分区压缩会节约硬件存储空间&#xff0…...

仓颉语言实战——1. 类型

仓颉语言实战——1. 类型 仓颉语言(Cangjie Language)是一个现代化的、简洁而强大的编程语言,它的类型系统为高效开发提供了极大的支持。本篇文章将围绕仓颉语言中的类型系统展开,结合实战代码,帮助开发者快速掌握这一…...

AWTK 在全志 tina linux 上支持 2D 图形加速

全志 tina linux 2D 图形加速插件。 开发环境为 全志 Tina Linux 虚拟机。 1. 准备 下载 awtk git clone https://github.com/zlgopen/awtk.git下载 awtk-linux-fb git clone https://github.com/zlgopen/awtk-linux-fb.git下载 awtk-tina-g2d git clone https://github.co…...

MySql幻读问题

认识具有反复性。 之前以为理解了幻读,最近看黑马的mysql教程以为再次加深了认识。然而现在认为之前的理解都是错误的,而且网上很多关于幻读的解释,都不太准确。 关于幻读的最佳解释还是要看官网mysql官网幻读解释 脏读和不可重复读比较好理…...

(南京观海微电子)——GH7009开机黑屏案例分析

一、 现象描述: 不良现象: LVDS模组,开机大概2秒后就黑屏。 二、问题分析 等主机进入Kernel 后做以下测试: 1、手动reset LCM 后 可以显示正常; 总结: 1)uboot 部分HS 太窄,仅有4个clk宽度&am…...

【Rust自学】7.4. use关键字 Pt.2 :重导入与换国内镜像源教程

喜欢的话别忘了点赞、收藏加关注哦,对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 7.4.1. 使用pub use重新导入名称 使用use将路径导入作用域内后。该名称在词作用域内是私有的。 以上一篇文章的代码为例: m…...

前端学习DAY28(水平)

元素水平方向的布局 元素在其父元素中水平方向的位置有以下几个属性共同决定 margin-left border-left padding-left width padding-right border-right margin-right 一个元素在其父元素中,水平布局必须要满足以下的等式 margin-left border-left …...

【MyBatis】day01搭建MyBatis框架

目录 第一章 初识Mybatis 第二章 搭建Mybatis框架 第三章 Mybatis核心配置详解【mybatis-config.xml】 第一章 初识Mybatis 1.1 框架概述 生活中“框架” 买房子 笔记本电脑 程序中框架【代码半成品】 Mybatis框架:持久化层框架【dao层】 SpringMVC框架&…...

yolov7算法及其改进

yolov7算法及其改进 1、YOLOV7简介2、ELAN架构设计2.1、Partial Residual Networks2.1.1、Masked Residual Layer2.1.2、Asymmetric Residual Layer 2.2、Cross Stage Partial Networks2.2.1、Cross stage partial operation2.2.2、Gradient flow truncate operation 2.3、Effi…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路

进入2025年以来&#xff0c;尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断&#xff0c;但全球市场热度依然高涨&#xff0c;入局者持续增加。 以国内市场为例&#xff0c;天眼查专业版数据显示&#xff0c;截至5月底&#xff0c;我国现存在业、存续状态的机器人相关企…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)

RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发&#xff0c;后来由Pivotal Software Inc.&#xff08;现为VMware子公司&#xff09;接管。RabbitMQ 是一个开源的消息代理和队列服务器&#xff0c;用 Erlang 语言编写。广泛应用于各种分布…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...

vue3 daterange正则踩坑

<el-form-item label"空置时间" prop"vacantTime"> <el-date-picker v-model"form.vacantTime" type"daterange" start-placeholder"开始日期" end-placeholder"结束日期" clearable :editable"fal…...