百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

ubuntu22.04安装NVIDIA、CUDA、CUDNN详细步骤

liuian 2025-01-03 17:21 39 浏览

1.查看GPU及驱动版本号

查看GPU:

命令:lspci | grep -i nvidia

查看驱动版本

sudo dpkg --list | grep nvidia-*
  
# 或者ubuntu-drivers devices

查看显卡型号

lspci | grep -i nvidia

查看发布版本号

cat /etc/issue

lsb_release -a

查看内核版本号

uname -sr

uname -a

查看GPU可用性

conda activate tensorflow

python

import tensorflow as tf
print(tf.test.is_gpu_available())
#如果结果是True,表示GPU可用

查看cuda可用性

conda activate tensorflow

python

import tensorflow as tf
tf.test.is_built_with_cuda()
print(tf.test.is_built_with_cuda())
#返回True表示可用

2.查看python、tensorflow版本:



conda activate tensorflow

python

import tensorflow as tf
#查看版本
tf.__version__    #或者print(tf.__version__)

#查看tensorflow安装路径
tf.__path__  #或者print(tf.__path__)

3.Ubuntu(Linux)系统下查看自己安装的CUDA和CUDNN的版本

CUDA:

(1)cat /usr/local/cuda/version.txtcat 

(2)nvidia-smi

(3)nvcc -V

(4)conda list | grep cuda

CUDNN:

(1)cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

(2)conda list | grep cuda

4.TensorFlow、Python、CUDA、CUDNN对应版本对应关系:

链接:https://tensorflow.google.cn/install/source#linux

5.Ubuntu22.04安装NVIDIA驱动

(1)安装驱动前一定要更新软件列表和安装必要软件、依赖

sudo apt-get update 										#更新软件列表

sudo apt-get install g++

sudo apt-get install gcc

sudo apt-get install make

(2)查看GPU型号

lspci | grep -i nvidia

(3)官网下载对应驱动(英文路径)

官方驱动链接:https://www.nvidia.cn/Download/index.aspx?lang=cn

(4)卸载原有驱动(第一次安装就不需要了)

sudo apt-get remove --purge nvidia*

(5)禁用nouveau(nouveau是通用的驱动程序)

sudo gedit /etc/modprobe.d/blacklist.conf 或者(blacklist-nouveau.conf)

在打开的blacklist.conf末尾添加如下,保存文本关闭

blacklist nouveau

options nouveau modeset=0

(6)在终端输入如下更新,更新结束后重启电脑

sudo update-initramfs –u

(7)重启后在终端输入如下,没有任何输出表示屏蔽成功

lsmod | grep nouveau

(8)为了安装新的Nvidia驱动程序,我们需要停止当前的显示服务器。

sudo telinit 3
# 或者按Ctrl + Alt + F1~F6中的一个 (分别对应进入tty1~tty6))

输入用户名(终端下@前面就是用户名)和密码

退出文本界面到图形界面

sudo telinit 5
# 或者Ctrl + Alt + F1/F7/F8 

(9)在文本界面中,禁用X-window服务,在终端输入

sudo /etc/init.d/gdm3 stop

(10)进入到存放驱动的目录下,输入命令:

sudo chmod 777 NVIDIA-Linux-x86_64-525.89.02.run#给你下载的驱动赋予可执行权限,才可以安装

sudo ./NVIDIA-Linux-x86_64-525.89.02.run   #安装

(11)安装结束后输入输入sudo reboot重启。

(12)驱动安装好后,终端输入nvidia-smi 检查是否装好,出现类似下方这样,就好了。


然后输入nvidia-settings 调出设置界面,类似下方这样,就OK了。


6.下载安装CUDA

(1)在官网下载cuda

链接:https://developer.nvidia.com/cuda-toolkit-archive 


(2)选择runfile的方式安装




按照下载引导,进行下载和安装



详细过程选择:

continue
accept
在此之前已经装过显卡驱动了,所以需要取消Driver选项。
install


(3)配置环境变量

sudo vim ~/.bashrc
或者sudo vi ~/.bashrc

打开文件后在文末添加环境(注意cuda文件名,根据情况写)

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

刷新环境

source ~/.bashrc


(4)验证是否安装成功

nvcc -V

像这种情况就是成功了


7.安装CUDNN的方法

(1)下载CUDA版本对应的CUDNN版本:

https://developer.nvidia.com/rdp/cudnn-archive#a-collapse805-111
https://developer.nvidia.com/rdp/cudnn-download



(2)注册完成后,找到对应版本进行下载


(3)参照官方文档进行安装:

https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#installlinux-tar



tar -xvf cudnn-linux-x86_64-8.8.0.121_cuda11-archive.tar.xz

sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda-11.7/include 

sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda-11.7/include 

sudo chmod a+r /usr/local/cuda-11.7/include/cudnn*.h /usr/local/cuda-11.7/lib64/libcudnn*


(4)检查版本及验证

cat /usr/local/cuda-11.7/include/cudnn_version.h | grep CUDNN_MAJOR -A 2


这是小编在学习过程中整理的,如有错误请大家多多指正,文章就分享到这里,希望对大家有帮助!

相关推荐

python入门到脱坑函数—定义函数_如何定义函数python

Python函数定义:从入门到精通一、函数的基本概念函数是组织好的、可重复使用的代码块,用于执行特定任务。在Python中,函数可以提高代码的模块性和重复利用率。二、定义函数的基本语法def函数名(...

javascript函数的call、apply和bind的原理及作用详解

javascript函数的call、apply和bind本质是用来实现继承的,专业点说法就是改变函数体内部this的指向,当一个对象没有某个功能时,就可以用这3个来从有相关功能的对象里借用过来...

JS中 call()、apply()、bind() 的用法

其实是一个很简单的东西,认真看十分钟就从一脸懵B到完全理解!先看明白下面:例1obj.objAge;//17obj.myFun()//小张年龄undefined例2shows(...

Pandas每日函数学习之apply函数_apply函数python

apply函数是Pandas中的一个非常强大的工具,它允许你对DataFrame或Series中的数据应用一个函数,可以是自定义的函数,也可以是内置的函数。apply可以作用于DataF...

Win10搜索不习惯 换个设定就好了_window10搜索用不了怎么办

Windows10的搜索功能是真的方便,这点用惯了Windows10的小伙伴应该都知道,不过它有个小问题,就是Windows10虽然会自动联网搜索,但默认使用微软自家的Bing搜索引擎和Edge...

面试秘籍:call、bind、apply的区别,面试官为什么总爱问这三位?

引言你有没有发现,每次JavaScript面试,面试官总爱问你call、bind和apply的区别?好像这三个方法成了通关密码,掌握了它们,就能顺利过关。其实不难理解,面试官问这些问题,不...

记住这8招,帮你掌握“追拍“摄影技法—摄影早自习第422日

杨海英同学提问:请问叶梓老师,我练习追拍时,总也不能把运动的人物拍清晰,速度一般掌握在1/40-1/60,请问您如何把追拍拍的清晰?这跟不同的运动形式有关系吗?请您给讲讲要点,谢谢您!摄影:Damia...

[Sony] 有点残酷的测试A7RII PK FS7

都是好机!手中利器!主要是最近天天研究fs5,想知道fs5与a7rii后期匹配问题,苦等朋友的fs5月底到货,于是先拿手里现有的fs7小测一下,十九八九也能看到fs5的影子,另外也了解一下fs5k标配...

AndroidStudio_Android使用OkHttp发起Http请求

这个okHttp的使用,其实网络上有很多的案例的,但是,如果以前没用过,copy别人的直接用的话,可以发现要么导包导不进来,要么,人家给的代码也不完整,这里自己整理一下.1.引入OkHttp的jar...

ESL-通过事件控制FreeSWITCH_es事务控制

通过事件提供的最底层控制机制,允许我们有效地利用工具箱,适时选择使用其中的单个工具。FreeSWITCH是一个核心交换与混合矩阵,它周围有几十个模块提供各种功能特性。我们完全控制了所有的即时信息,这些...

【调试】perf和火焰图_perf生成火焰图

简介perf是linux上的性能分析工具,perf可以对event进行统计得到event的发生次数,或者对event进行采样,得到每次event发生时的相关数据(cpu、进程id、运行栈等),利用这些...

文本检索控件也玩安卓?dtSearch Engine发布Android测试版

dtSearchEngineforLinux(原生64-bit/32-bitC++和JavaAPIs)和dtSearchEngineforWin&.NET(原生64-bi...

网站后台莫名增加N个管理员,记一次SQL注入攻击

网站没流量,但却经常被SQL注入光顾。最近,网站真的很奇怪,网站后台不光莫名多了很多“管理员”,所有的Wordpres插件还会被自动暂停,导致一些插件支持的页面,如WooCommerce无法正常访问、...

多元回归树分析Multivariate Regression Trees,MRT

多元回归树(MultivariateRegressionTrees,MRT)是单元回归树的拓展,是一种对一系列连续型变量递归划分成多个类群的聚类方法,是在决策树(decision-trees)基础...

JMETER性能测试_JMETER性能测试指标

jmeter为性能测试提供了一下特色:jmeter可以对测试静态资源(例如js、html等)以及动态资源(例如php、jsp、ajax等等)进行性能测试jmeter可以挖掘出系统最大能处...