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

目录

  • 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.rhkb.cn/news/284715.html

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

相关文章

SpringBoot3使用响应Result类返回的响应状态码为406

Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: No acceptable representation] 解决方法:Result类上加上Data注解

文件包含一-WEB攻防-PHP应用文件包含LFIRFI伪协议编码算法无文件利用黑白盒

演示案例: 文件包含-原理&分类&利用&修复黑盒利用-VULWEB-有无包含文件白盒利用-CTFSHOW-伪协议玩法 #文件包含-原理&分类&利用&修复 1、原理 程序开发人员通常会把可重复使用的函数写到单个文件中,在使用某些函数时&#xff0c…

YOLOV5 改进:替换backbone为Swin Transformer

1、前言 本文会将YOLOV5 backbone更换成Swin Transformer 具体为什么这样实现参考上文:YOLOV5 改进:替换backbone(MobileNet为例)-CSDN博客 这里只贴加入的代码 训练结果如下: 2、common文件更改 在common文件中加入下面代码: 这里是swin transformer的实现,参考:…

React函数组件Hook

问题: 相对于类组件, 函数组件的编码更简单, 效率也更高, 但函数组件不能有state (旧版) 解决: React 16.8版本设计了一套新的语法来让函数组件也可以有state Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性 Hook也叫钩子…

软件测试 -- Selenium常用API全面解答(java)

写在前面 // 如果文章有问题的地方, 欢迎评论区或者私信指正 目录 什么是Selenium 一个简单的用例 元素定位 id定位 xpath定位 name定位 tag name 定位和class name 定位 操作元素 click send_keys submit text getAttribute 添加等待 显示等待 隐式等待 显示等…

【网络安全】CobaltStrike 使用

本文章仅用于信息安全学习,请遵守相关法律法规,严禁用于非法途径。若读者因此作出任何危害网络安全的行为,后果自负,与作者无关。 Cobalt Strike是一款渗透测试神器,Cobalt Strike已经不再使用MSF而是作为单独的平台使…

[NLP] 初窥000001

NL(natural language)–自然语言 人类的语言–中文,英语,法语 NLP(Natural Language Processing)–自认语言处理 计算机处理人类语言的技术,它包含翻译、智能问答、文本分类、情感分析等常见应用。 CV(Computational Vision) 感知NLP 认知…

Vue使用font-face自定义字体详解

目录 1 介绍2 使用2.1 语法2.2 属性说明2.3 Vue使用案例2.3.1 全局定义字体2.3.2 在页面使用 3 注意事项 1 介绍 font-face 是 CSS 中的一个规则,它允许你加载服务器上的字体文件(远程或者本地),并在网页中使用这些字体。这样&am…

【C语言】——指针四:字符指针与函数指针变量

【C语言】——指针四:字符指针与函数指针变量 一、字符指针二、函数指针变量2.1、 函数指针变量的创建2.2、两段有趣的代码 三、typedef关键字3.1、typedef的使用3.2、typedef与define比较 四、函数指针数组 一、字符指针 在前面的学习中,我们知道有一种…

LeetCode Python - 71. 简化路径

目录 题目描述解法运行结果 题目描述 给你一个字符串 path ,表示指向某一文件或目录的 Unix 风格 绝对路径 (以 ‘/’ 开头),请你将其转化为更加简洁的规范路径。 在 Unix 风格的文件系统中,一个点(.&…

【电气安全】ASCP电气防火限流式保护器/末端回路线路保护

为什么要使用电气防火限流式保护器? 应急管理部消防救援局统计,在造成电气火灾事故的原因中,最为主要的当为末端线路短路,在电气火灾事故中占比高达70%以上。如何效预防末端线路短路引发的电气火灾事故? 现阶段最为常…

jmeter断言使用方法

断言主流的有两种:响应断言、JSON断言 响应断言 1、http请求添加响应断言 2、三种作用域:第一种既作用主请求又作用子请求、只作用主请求、只作用子请求。我们默认选中间的仅作用主请求即可。 3、测试字段和匹配规则 测试字段一般选择响应文本即可&am…

Springboot家乡特色推荐系统

目录 背景 技术简介 系统简介 界面预览 背景 在当今这个网络迅猛发展的时代,计算机技术已经广泛应用于我们生活的每个角落,互联网在经济和日常生活等多个方面扮演着至关重要的角色,它已成为人们分享资源和快速交流信息的关键平台。在中国…

灯塔:CSS笔记(5)

定位: 1.标准流 1.块级元素独占一行->垂直布局 2.行内元素/行内块元素一行显示多个->水平布局 2.浮动 可以让原本垂直布局的 块级元素变成水平布局 3.定位 1.可以让元素自由的摆放在网页的任意位置 2.一般用于盒子之间的层叠情况 使用定位的步骤 1.…

基于python+vue超市货品信息管理系统flask-django-php-nodejs

在此基础上,结合现有超市货品信息管理体系的特点,运用新技术,构建了以 python为基础的超市货品信息管理信息化管理体系。首先,以需求为依据,根据需求分析结果进行了系统的设计,并将其划分为管理员和用户二种…

【前端寻宝之路】学习和使用表单标签和表单控件

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL| ​💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-cR8zvB8CkpxTk485 {font-family:"trebuchet ms",verdana,arial,sans-serif;f…

函数作用域和块级作用域:JavaScript中的变量作用域解析

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

tabs自定义样式

使用el-tabs 去修改样式的话比较麻烦&#xff0c;索性直接用div来制作。 <div class"contain"><div class"tab_wrap"><div :class"[skew, first, active 1 ? isActive: ]" click"tabClick(1)"><span class&quo…

Linux(Centos)安装mysql 8 并且使用systemctl管理服务

1.下载mysql包 地址 MySQL :: Download MySQL Community Server (Archived Versions) 注&#xff1a;下载我圈住的减压之后里面会有tar.gz 再次减压才会是软件主体 2.安装和准备 yum -y install numactl 安装numactl tar -xvf mysql-8.0.30-el7-x86_64.tar 拆分 …

C语言操作符和数据类型的存储详解

CSDN成就一亿技术人 目录​​​​​​​ 一.操作符 一.算数操作符&#xff1a; 二.位移操作符&#xff1a; 三.位操作符&#xff1a; 四.赋值操作符&#xff1a; 五.单目操作符&#xff1a; 六.关系操作符&#xff1a; 七.逻辑操作符&#xff1a; 八.条件操作符&…