Ubuntu20.04 安装 cudatookit 12.2 + cudnn 安装

最简约的部署Ubuntu20.04深度学习环境的教程

1. 安装Ubuntu20.04 系统

B站详细的安装教程
简约安装版

2. 安装Nvidia显卡驱动

我参考了各种资料,重装系统,完美解决开机显示器黑屏无法进入桌面的情况

黑屏问题主要是由linux内核更新导致,nvidia 不兼容 ubuntu的图像显示,所以很容易出现黑屏情况

在安装nvidia驱动前一定要使用命令:

# 一定要保持当前的内核,也就是安装 NVIDIA 驱动时用的内核
sudo apt-mark hold linux-image-generic linux-headers-generic

即保持当前系统的内核不更新之后,再去安装 NVIDIA 驱动,成功解决问题

打开应用程序里面的 软件与更新 选择最适合自己的版本,然后直接点击 应用更改,等待一会
在这里插入图片描述

安装完毕后,直接重新启动,然后输入nvidia-smi 成功出现以下画面:

在这里插入图片描述

3. 安装 cudatookit 12.2

由于显卡最高支持到CUDA 12.2
这个版本以前的CUDA都是兼容的,怕以后再升级麻烦,所以就直接安装支持的最高版本了

CUDA Toolkit Archive的网址为 https://developer.nvidia.com/cuda-toolkit-archive

点击CUDA Toolkit 12.2.0下载相应版本的CUDA12.2.0(选自己想要安装的版本即可,这里以12.2.0为例)

在这里插入图片描述
在这里插入图片描述

为了少输入点指令,所以就选择了runfile,感觉是最简单的方法了

运行上面指令后,会弹出如下界面,点击Continue,然后再输入accept

在这里插入图片描述
在弹出的界面中通过Enter键,取消Driver和535 的安装,然后点击Install,等待

配置CUDA的环境变量
CUDA安装完成后,需要配置变量环境才能正常使用。首先在终端输入

sudo gedit ~/.bashrc

打开.bashrc文件。然后,在.bashrc文件的最后添加以下CUDA环境变量配置信息

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

最后 ctrl+s 保存

刷新配置

source ~/.bashrc

查看并且测试安装

nvcc -V

在这里插入图片描述
查看到CUDA的安装信息,如下图所示,至此CUDA安装成功!

4. 安装cuDNN

cuDNN的网址为 https://developer.nvidia.com/rdp/cudnn-download

选择Ubuntu20.04系统下,CUDA12.X 对应的cuDNN v8.9.6版本,如下图所示:

在这里插入图片描述

下载对应版本的 deb 文件,在下载的文件夹里面,使用命令安装

sudo dpkg -i cudnn-local-repo-ubuntu2204-8.9.6.50_1.0-1_amd64.deb

安装完成会显示,后面的操作命令,执行对应的命令就行:

sudo cp /var/cudnn-local-repo-ubuntu2204-8.9.6.50/cudnn-local-1998375D-keyring.gpg /usr/share/keyrings/

若没有显示提示命令则执行通用命令:

sudo cp /var/cudnn-local-*/cudnn-*-keyring.gpg /usr/share/keyrings/

安装对应的依赖包

进入文件夹cd /var/cudnn-local-repo-ubuntu2204-8.9.6.50/,安装对应的依赖包,这些依赖包直接下载安装会失败,都包含在deb文件中,进入上面提到的文件夹安装即可:

sudo dpkg -i libcudnn8_8.9.6.50-1+cuda12.2_amd64.deb
sudo dpkg -i libcudnn8-dev_8.9.6.50-1+cuda12.2_amd64.deb
sudo dpkg -i libcudnn8-samples_8.9.6.50-1+cuda12.2_amd64.deb

验证安装成功

cd /usr/src/cudnn_samples_v8	#  进入文件夹cd /usr/src/cudnn_samples_v8
cp -r /usr/src/cudnn_samples_v8/ $HOME	# 将 cuDNN 示例复制到用户文件
cd $HOME/cudnn_samples_v8/mnistCUDNN
make clean && make	# 编译 cuDNN mnisiCUDNN 示例
./mnistCUDNN	# 运行 mnistCUDNN 示例

在这里插入图片描述
返回 Test passed! 则证明安装成功!!!开始深度学习炼丹之旅吧!!!

参考文献

ubuntu20.04安装NVIDIA显卡以及重启黑屏的一种解决方案
Ubuntu 20.04-NVIDIA显卡驱动-安装和卸载-解决黑屏问题
Ubuntu系统安装nvidia(英伟达)驱动后,开机显示器黑屏无法进入桌面
Ubuntu20.04下CUDA、cuDNN的详细安装与配置过程(图文)
Ubuntu20.04配置NVIDIA+CUDA12.2+CUDNN【附所有下载资源】【亲测有效】【非常详细】
Ubuntu 22.04 安装 CUDA 和 cuDNN 及验证

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

混合注意力机制 -- Convolutional Block Attention Module(CBAM)

CBAM CBAM 模块概述 通道注意力模块(Channel Attention Mechanism)和空间注意力模块(Spatial Attention Mechanism)是注意力机制的两种主要形式,它们分别通过对通道维度和空间维度的特征图进行加权,从而使…

算法金 | Transformer,一个神奇的算法模型!!

大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 抱个拳,送个礼 在现代自然语言处理(NLP)领域,Transformer 模型的出现带来了革命性的变…

每日一题-验证回文串

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” //验证回文串 #include<vector> class Solution { public:bool reverseString(char s) {return (s > a && s < z) ||(s > 0 && s < 9) ||(s…

Lesson 43 Hurry up!

Lesson 43 Hurry up! 词汇 of course 当然【口语】 经常出现在口语交际中&#xff1a; Of course not. 当然不。 同义词&#xff1a; Certainly 当然。 Certainly not. 当然不。 注意语气&#xff1a;略带挑衅。Sure. 当然。 Sure not. 当然不。 Not sure. 不一定。 kettle…

Pandas 学习笔记(一)

一、pandas简介 Pandas 是 Python 语言的一个扩展程序库&#xff0c;用于数据分析。 Pandas 名字衍生自术语 "panel data"&#xff08;面板数据&#xff09;和 "Python data analysis"&#xff08;Python 数据分析&#xff09;。 Pandas 是一个开放源码…

Python + OpenCV 酷游地址教学V鄋KWK3589

本篇文章汇整了一系列的Python OpenCV 教学&#xff0c;只要按照教学文的顺序阅读和实作&#xff0c;就可以轻松入门OpenCV&#xff0c;并透过OpenCV 实现许多影像相关的创意应用。 接下来我们来介绍OpenCV-- OpenCV 是一个跨平台的电脑视觉函式库( 模组) &#xff0c;可应用…

CesiumJS【Basic】- #042 绘制纹理线(Primitive方式)

文章目录 绘制纹理线(Primitive方式)1 目标2 代码2.1 main.ts3 资源文件绘制纹理线(Primitive方式) 1 目标 使用Primitive方式绘制纹理线 2 代码 2.1 main.ts var start = Cesium.Cartesian3

SSM泰华超市商品管理系统-计算机毕业设计源码11946

目 录 摘要 1 绪论 1.1 研究背景 1.2 研究意义 1.3论文结构与章节安排 2系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据新增流程 3.2.2 数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.2 非功能性分析 2.4 系统用例分析 2.5本章小结 3 系统总体设…

一键把二次元老婆拉进现实(Stable Diffusion进阶:ControlNet LineArt模型)

大家好我是极客菌&#xff01;&#xff01;&#xff01; 操作&#xff0c;就能将二次元老婆拉进现实&#xff0c;成为你的专属女友。本文将带你深入了解ControlNet LineArt模型的使用方法&#xff0c;助你轻松实现这一梦想。 ControlNet LineArt模型是Stable Diffusion的最新…

AI大模型日报#0701:Meta发布LLM Compiler、扒一扒Sora两带头人博士论文

导读&#xff1a;AI大模型日报&#xff0c;爬虫LLM自动生成&#xff0c;一文览尽每日AI大模型要点资讯&#xff01;目前采用“文心一言”&#xff08;ERNIE-4.0-8K-latest&#xff09;生成了今日要点以及每条资讯的摘要。欢迎阅读&#xff01;《AI大模型日报》今日要点&#xf…

32.哀家要长脑子了!

1.299. 猜数字游戏 - 力扣&#xff08;LeetCode&#xff09; 公牛还是挺好数的&#xff0c;奶牛。。。妈呀&#xff0c;一朝打回解放前 抓本质抓本质&#xff0c;有多少位非公牛数可以通过重新排列转换公牛数字&#xff0c;意思就是&#xff0c;当这个数不是公牛数字时&#x…

控制器方法执行流程和 @InitBinder【Spring源码学习】

控制器方法执行流程 InitBinder 加在ControllerAdvice中 首先说明ControllerAdvice和aop没有任何关系&#xff01; 加在ControllerAdvice中只对所有控制器都生效 全局的在开始时就会保存到handlerMappingAdapter中的cache中&#xff1b; 加在Controller中 加在controller中只对…

TS---typescript的安装和tsc命令使用

什么是TS---typescript&#xff1f; &#xff08;TypeScript是Microsoft公司注册商标&#xff09; TypeScript具有类型系统&#xff0c;且是JavaScript的超集&#xff0c; 它可以编译成普通的JavaScript代码。TypeScript支持任意浏览器&#xff0c;任意环境&#xff0c;任意系…

仓库管理系统24--统计报表

原创不易&#xff0c;打字不易&#xff0c;截图不易&#xff0c;多多点赞&#xff0c;送人玫瑰&#xff0c;留有余香&#xff0c;财务自由明日实现 1、引用LiveCharts 2、创建LiveChartViewModel using GalaSoft.MvvmLight; using LiveCharts.Wpf; using LiveCharts; using Sy…

手把手搞定报名亚马逊科技认证

引言 亚马逊云科技认证考试为我们这些技术从业者提供了提升专业技能的机会。无论选择线上还是线下考试&#xff0c;每种方式都有其独特的优势和挑战。选择合适的考试方式将帮助我们更好地展示自己的技术水平。以下是我对不同考试方式的优缺点介绍&#xff0c;以及各科目的考试…

Java案例抢红包

目录 一&#xff1a;题目要求&#xff1a; 二&#xff1a;思路分析&#xff1a;&#xff08;遇见问题先想出完整的思路逻辑再去动手事半功倍&#xff09; 三&#xff1a;具体代码&#xff1a; 一&#xff1a;题目要求&#xff1a; 二&#xff1a;思路分析&#xff1a;&#x…

基于隐马尔可夫模型的股票预测【HMM】

基于机器学习方法的股票预测系列文章目录 一、基于强化学习DQN的股票预测【股票交易】 二、基于CNN的股票预测方法【卷积神经网络】 三、基于隐马尔可夫模型的股票预测【HMM】 文章目录 基于机器学习方法的股票预测系列文章目录一、HMM模型简介&#xff08;1&#xff09;前向后…

Python容器 之 列表--下标和切片

列表的切片 得到是 新的列表字符串的切片 得到是 新的字符串 如果下标 不存在会报错 list1 [1, 3.14, "hello", False] print(list1)# 获取 列表中 第一个数据 print(list1[0]) # 1# 获取列表中的最后一个数据 print(list1[-1]) # [False]# 获取中间两个数 即 3.1…

面经-数据库

1.MySQL 1.1什么是MySQL? MySQL 是⼀种关系型数据库&#xff0c;在 Java 企业级开发中⾮常常⽤&#xff0c;因为 MySQL 是开源免费的&#xff0c;并 且⽅便扩展。阿⾥巴巴数据库系统也⼤量⽤到了 MySQL &#xff0c;因此它的稳定性是有保障的。 MySQL 是开放源代码的&…

VuePress介绍

从本文开始&#xff0c;动手搭建自己的博客&#xff01;希望读者能跟着一起动手&#xff0c;这样才能真正掌握。 ‍ VuePress 是什么 VuePress 是由 Vue 作者带领团队开发的&#xff0c;非常火&#xff0c;使用的人很多&#xff1b;Vue 框架官网也是用了 VuePress 搭建的。即…