【Linux更新驱动、cuda和cuda toolkit】

news2024/11/26 22:46:33

目录

  • 1. 更新显卡驱动
    • 1.1. 查看当前显卡驱动版本
    • 1.2. 删除原始显卡驱动
    • 1.3. 删除CUDA Toolkit
    • 1.4. 在NVIDIA官网找到2080Ti对应的最新驱动程序
  • 2. 更新CUDA Toolkit
    • 2.1. 下载CUDA Toolkit
    • 2.2. 安装.run
    • 2.3. 添加环境变量
    • 2.4. 检查是否安装好了

最近需要更新服务器的显卡驱动和CUDA版本,记录一下更新过程。

写在前面:对于稍微有些复杂的环境安装问题,不要指望一个博客能涉及到方方面面。以下内容只是记录大体流程,不同环境肯定还会遇到不同的、博客中没有涉及到的问题,此时还需要“具体问题具体分析”。

1. 更新显卡驱动

1.1. 查看当前显卡驱动版本

nvidia-smi -a

在这里插入图片描述
可以看到目前的显卡驱动是418.74,CUDA Driver是10.1,显卡是2080Ti。

1.2. 删除原始显卡驱动

sudo nvidia-uninstall

遇到选项一路回车就行。

1.3. 删除CUDA Toolkit

找到你安装cuda toolkit的位置

cd /usr/local/cuda-10.1/bin/
sudo ./cuda-uninstaller

都删除了:
在这里插入图片描述
删除cuda toolkit文件夹:

rm -r /usr/local/cuda-10.1/

1.4. 在NVIDIA官网找到2080Ti对应的最新驱动程序

NVIDIA官网
按照我的版本信息选择相应的版本
在这里插入图片描述
下载最新版本驱动:
在这里插入图片描述
将下载的‘NVIDIA-Linux-x86_64-550.54.14.run’放在服务器某路径下:

cd /root/nvidia-driver-550.54.14/
sh NVIDIA-Linux-x86_64-550.54.14.run

一路选择继续安装,安装好之后重启:

sudo reboot

重启后查看:

nvidia-smi

在这里插入图片描述
可以看到driver和CUDA Version都更新到最新了。

2. 更新CUDA Toolkit

弄清一个问题:nvidia-smi和nvcc -V显示的CUDA版本有什么区别?

参考:一文讲清楚CUDA、CUDA toolkit、CUDNN、NVCC关系

CUDA主要有两个API:runtime API(nvcc -V)、driver API(nvidia-smi)

  • nvidia-smi属于driver API、nvcc属于runtime API。
  • 用于支持driver API的必要文件(如libcuda.so)是由GPU driver installer安装的。
  • 用于支持runtime API的必要文件(如libcudart.so以及nvcc)是由CUDA Toolkit installer安装的。
    (如果只安装driver API,不安装runtime API(cuda toolkit),也能正常使用pytorch,但涉及到一些需要编译安装的更底层的工具,比如apex、deepspeed,就会报错,这时还需要床runtime API,不如直接全装了。)

2.1. 下载CUDA Toolkit

来这里下载对应CUDA Driver Version版本的CUDA Toolkit Version(根据你的环境自己选):在这里插入图片描述

mkdir /root/cuda-toolkit-12.1/
cd /root/cuda-toolkit-12.1/
wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run

2.2. 安装.run

sudo sh cuda_12.1.1_530.30.02_linux.run

注意:由于已经有CUDA Driver12.4了,因此在安装过程中不需要勾选CUDA Driver。

2.3. 添加环境变量

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

当然,如果你之前安装过CUDA Toolkit,需要先删除环境变量 P A T H 和 PATH和 PATHLD_LIBRARY_PATH中的地址,具体操作参考:Linux修改环境变量中的“修改方法二”。

2.4. 检查是否安装好了

nvcc -V

在这里插入图片描述
完成!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

yolov7 gui 轻松通过GUI来实现车辆行人计数

YOLOv7 GUI 是一款用户友好型图形界面应用程序,专为简化基于YOLOv7(You Only Look Once version 7)的目标检测流程而设计。该工具允许用户无需深入掌握命令行操作和复杂编程细节,即可方便快捷地运行YOLOv7模型来检测图像或视频中的…

精简版 Obsidian 图床配置 PicGo+ gitee

精简版 Obsidian 图床配置 PicGo gitee 图床的作用 图床(Image Hosting Service)是一种在线服务,用于存储和托管用户上传的图片文件。用户可以将图片上传到图床服务器,并获得一个可访问的图片链接,然后可以在网页、博…

NVIDIA最新 Blackwell架构简介

NVIDIA Blackwell架构简介 在AI和大型语言模型(LLMs)迅速发展的领域中,追求实时性能和可扩展性至关重要。从医疗保健到汽车行业,组织正深入探索生成性AI和加速计算解决方案的领域。对生成性AI解决方案的需求激增,促使企…

安防监控视频汇聚平台EasyCVR接入海康Ehome设备,设备在线但视频无法播放是什么原因?

安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安…

视频监控平台问题-通过url免密直接浏览实时视频出错的问题解决

目 录 一、通过url免密浏览实时监控视频介绍 二、浏览出错现象描述 1、问题提出 2、问题描述 (1)现象 (2)前端调试 (3)后端日志 三、问题解决 1、问题分析 2,查找资源&#…

【MQTT】Vue中使用mqtt

MQTT(Message Queuing Telemetry Transport)作为一种轻量级、开放、灵活、简单、易于实现的通信协议。它基于发布/订阅(Publish/Subscribe)模式的消息传输协议,在上位机和硬件设备间通信时经常用到。虽然在嵌入式软件一…

1、Java虚拟机学习-类的生命周期-加载阶段-以及怎样查看方法区中的对象和堆中对象的关联以及静态变量存在什么地方

类的生命周期 其中连接又可以分为3个小阶段 一、加载阶段 1、加载阶段第一步是类加载器根据类的全限定名通过不同的渠道以二进制流的方式获取字节码信息。 渠道: 2、类加载器在加载完类之后,Java虚拟机会将字节码中的信息保存在内存的方法区中。 方法区是虚拟…

AI - 机器学习GBDT算法

目录 GBDT 提升树 梯度提升树 GBDT算法实战案例 XGBoost 😆😆😆感谢大家的观看😆😆 GBDT 梯度提升决策树(Gradient Boosting Decision Tree),是一种集成学习的算法&…

基于springboot+vue的餐饮管理系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

GAMES101 学习3

Lecture 13 ~ 16 Shadow mapping 一种图像空间算法生成阴影时不需要知道场景中的几何信息会产生走样现象 最重要的思想:如果有的点不在阴影里你又能看到这个点,那么说明摄像机可以看到这个点,光源也可以看到这个点 经典的Shadow mapping …

提升合规性!Zoho如何优化CRM产品合规性?

在企业数字化和信息化高速发展的今天,CRM管理系统成为越来越多企业的选择。然而,不是所有CRM供应商都有合规意识。合规性不应当只是一项法律规定,更是保证CRM供应商持续发展、赢得客户信赖以及应付监管压力的关键支撑。Zoho对企业合规性的重视…

智能码垛机:企业高效物流管理的得力助手

在快速发展的现代企业中,高效物流管理不仅是提升竞争力的关键,更是降低成本、增加利润的重要手段。随着科技的进步,智能码垛机作为现代物流技术的重要组成部分,正日益成为企业实现高效物流管理的得力助手。 一、智能码垛机的工作原…

基于Python的口罩佩戴识别的设计与实现(UI界面+MySQL数据库+YOLOv5+训练数据集+开题报告+中期检查+论文)

摘要 文旨在基于Python开发一种口罩佩戴识别系统,通过深度学习技术实现对口罩佩戴情况的准确检测。采用了YOLOv5系列目标检测算法作为基础模型,并结合迁移学习进行训练和优化。同时,为了提供更好的用户体验,本系统还设计了用户登录…

排序算法之选择排序介绍

目录 算法简介 算法描述 代码实现 算法简介 选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素…

再谈EMC Unity存储系统内存DIMM问题

以前写过一篇关于EMC Unity 存储系统的DIMM的介绍文章,但是最近还是遇到很多关于内存的问题,还有一些退货,所以有必要再写一篇关于EMC Unity 内存方面的问题,供朋友们参考。如果还有疑问,可以加vx:StorageE…

代码随想录day24(1)二叉树:最大二叉树(leetcode654)

题目要求: 给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下: 二叉树的根是数组中的最大元素。左子树是通过数组中最大值左边部分构造出的最大二叉树。右子树是通过数组中最大值右边部分构造出的最大二叉树。 通过给定的数组构…

【爬虫实战】使用Python获取花粉俱乐部中Mate60系列的用户发帖数据

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

重装系统后鼠标识别不了咋办

不知道大家在重装系统时,有没有遇到过系统重装完成后,鼠标不能使用的情况。在这种情况下,我们要怎么操作电脑解决这个问题呢?今天就跟大家分享重装系统后鼠标识别不了咋办。 一、主板没有设置兼容usb 在重装系统时,如果主板没有设置兼容usb,就会出现鼠标使用不了的现象。…

C++基础之友元(十)

由于C类的封装性,所以类的私有成员只能在类的内部访问,类之外是不能访问他们的。但是如果将其他类设置为类的友元(friend),那么其他类也可以访问该类的私有成员。如果把类比作是一个家庭的话,那么private就…

安防监控平台EasyCVR使用管理员权限登录后,平台菜单栏显示不全是什么原因?

安防视频监控系统EasyCVR视频综合管理平台,采用了开放式的网络结构,平台能在复杂的网络环境中(专网、局域网、广域网、VPN、公网等)将前端海量的设备进行统一集中接入与视频汇聚管理,平台支持设备通过4G、5G、WIFI、有…