(CentOS 7)nvidia-smi:Failed to initialize NVML: Driver/library version mismatch

news2024/12/25 3:40:23

[CentOS 7]nvidia-smi:Failed to initialize NVML: Driver/library version mismatch

这里仅描述自身发现的一种情况,希望对大家有所帮助。

问题源头: nvidia-smi \text{nvidia-smi} nvidia-smi报错问题

服务器系统版本: CentOS 7 \text{CentOS 7} CentOS 7
在查看显卡驱动版本信息时出错:

nvidia-smi

Failed to initialize NVML: Driver/library version mismatch

首先查看当前环境显卡驱动使用的内核版本:

cat /proc/driver/nvidia/version

返回结果:
其中 440.118.02 \text{440.118.02} 440.118.02是显卡驱动版本; 4.8.5 \text{4.8.5} 4.8.5表示 GCC \text{GCC} GCC编译器版本。

NVRM version: NVIDIA UNIX x86_64 Kernel Module  440.118.02  Thu Sep  3 09:54:46 UTC 2020
GCC version:  gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 

再查看 CUDA \text{CUDA} CUDA版本:

nvcc -V

返回结果:

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Wed_Oct_23_19:24:38_PDT_2019
Cuda compilation tools, release 10.2, V10.2.89

我们事先知道 440.118.02 \text{440.118.02} 440.118.02兼容 10.2 \text{10.2} 10.2 CUDA \text{CUDA} CUDA版本,因而不会是 CUDA \text{CUDA} CUDA自身版本的错误。

执行如下指令:

dmesg | grep NVRM

返回结果

[ ***] NVRM: API mismatch: the client has the version 440.33.01, but
NVRM: this kernel module has the version 440.118.02. Please
NVRM: make sure that this kernel module and all NVIDIA driver
NVRM: components have the same version.

其表示 CUDA \text{CUDA} CUDA内部基于的显卡驱动版本 440.33.01 \text{440.33.01} 440.33.01当前环境中的显卡驱动版本 440.118.02 \text{440.118.02} 440.118.02不匹配。
这里我建议如果已经装好显卡驱动的,尽量不要删了重新装,非常麻烦。这里介绍的是重新安装 CUDA \text{CUDA} CUDA的版本。

CUDA \text{CUDA} CUDA安装时的问题

CUDA \text{CUDA} CUDA官方下载路径:
https://developer.nvidia.com/cuda-toolkit-archive
打开后,这里选择 10.2 10.2 10.2版本,并按照自身系统条件进行选择。

这里服务器系统版本是 CentOS 7 \text{CentOS 7} CentOS 7,这里对应的安装指令表示如下:

wget https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
sudo sh cuda_10.2.89_440.33.01_linux.run

从该路径的名称可以看出,该版本号10.2.89 CUDA \text{CUDA} CUDA被设定了唯一的显卡驱动版本——440.33.01

作为小白,可能会存在这样一种误区:可以将我们的显卡驱动版本440.118.02升级到440.33.01

通过指令查询当前服务器的显卡信息:

lspci | grep -i nvidia

返回结果如下,是 2 2 2 GeForce RTX 2080Ti \text{GeForce RTX 2080Ti} GeForce RTX 2080Ti显卡。

17:00.0 VGA compatible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti Rev. A] (rev a1)
17:00.1 Audio device: NVIDIA Corporation TU102 High Definition Audio Controller (rev a1)
17:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Host Controller (rev a1)
17:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU102 USB Type-C UCSI Controller (rev a1)
65:00.0 VGA compatible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti Rev. A] (rev a1)
65:00.1 Audio device: NVIDIA Corporation TU102 High Definition Audio Controller (rev a1)
65:00.2 USB controller: NVIDIA Corporation TU102 USB 3.1 Host Controller (rev a1)
65:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU102 USB Type-C UCSI Controller (rev a1)

Nvidia \text{Nvidia} Nvidia各显卡驱动版本查询路径:
https://www.nvidia.com/Download/Find.aspx?lang=en-us
将我们的显卡型号输入,查找是否存在440.33.01版本。最后结果是显而易见的:没有找到

最终我在特斯拉公司 Tesla T4 \text{Tesla T4} Tesla T4中找到了该版本:
示例
这说明: 440.33.01 \text{440.33.01} 440.33.01根本就不是 GeForce \text{GeForce} GeForce显卡的版本号
那么 GeForce \text{GeForce} GeForce的显卡驱动就不能用 CUDA=10.2 \text{CUDA=10.2} CUDA=10.2版本吗 ? ? ?自然可以用的。那么我们在安装 CUDA \text{CUDA} CUDA的时候就需要注意这个事项。

关于 CUDA \text{CUDA} CUDA安装请参考:
centos卸载cuda与安装 - 简书

重点在于:在安装 CUDA \text{CUDA} CUDA的过程中,需要将 Driver \text{Driver} Driver的项去除
需要注意的是:[X]表示被选定的意思(有点坑)。而我们要选择[ ]。

Cuda安装过程
Cuda安装过程2
在安装结束之后,我们再次执行dmesg | grep NVRM。返回结果:

[***] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  440.118.02  Thu Sep  3 09:54:46 UTC 2020

不再报版本冲突的错误了。
最终观察nvidia-smi

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.118.02   Driver Version: 440.118.02   CUDA Version: 10.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce RTX 208...  Off  | 00000000:17:00.0 Off |                  N/A |
| 36%   64C    P0    81W / 300W |      0MiB / 11019MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce RTX 208...  Off  | 00000000:65:00.0 Off |                  N/A |
| 62%   72C    P0    48W / 300W |      0MiB / 11016MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

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

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

相关文章

JMX+Prometheus监控Grafana展示

文章目录 概述Java代码使用PrometheusApi统计监控指标PrometheusGrafana展示 概述 最近在阅读InLong的源码,发现它采用通过JMXPrometheus进行指标监控。 这里做了下延伸将介绍使用JMXPrometheusGrafana进行监控指标展示,这里单独将Metric部分代码抽离出…

网络配置管理器中的系统日志配置

包含许多设备的大型网络基础设施将在其清单中具有某些重要和关键设备,例如核心路由器或防火墙。这些设备必须始终受到有关任何配置更改的持续监视。 在如此庞大的网络中,手动跟踪所有这些重要设备并在每次进行新更改时触发备份几乎是不可能的。如果管理…

windows环境部署seata注意事项

1.将seata放置微服务项目中: 1.服务端下载地址:https://github.com/seata/seata/releases/download/v1.4.2/seata-server-1.4.2.zip 2.源码下载地址: https://github.com/seata/seata (将script目录以及里面文件放至seata-server中&#xff…

力扣挑战:中枢整数的定义与寻找方法

本篇博客讲解力扣“2485. 找出中枢整数”的解题思路,这是题目链接。 给定一个正整数n,如果它存在一个中枢整数x,那么满足以下等式: 123…x x(x1)(x2)…n 利用等差数列求和公式:(首项末项)项数2,以及项数…

优思学院|TQM与六西格玛完美契合:质量和利润的共赢之道

TQM的本质乃无止境地追求质量,然而在解决各个问题点时,直到目的逹成之前必须不断地转动PDCA或者六西格玛方法中的DMAIC这些个活动,究竟与经营有什么关连呢? 我们都知道企业的目的是生产好的产品、提供好的服务,并以合…

火热的低代码和无代码赛道

一、背景 星霜荏苒,居诸不息。互联网技术飞速发展,软件的设计、开发、应用也是风发泉涌,无论是开发工具还是应用程序,都在不断追求降本增效,极大地推动了软件研发的长足进步。但然而,长期以来,我…

elementui-drawer模板

1、效果图 2、上代码 <template><div><el-drawersize"100%":visible.sync"drawer"style"position: absolute;"class"details":modal-append-to-body"false":modal "false":before-close"ha…

Linux环境基础开发工具使用(yum软件安装工具的使用、vim编辑器使用及握gcc/g++编译器的使用等)

Linux环境基础开发工具使用 1.Linux 软件包管理器 yum1.1 什么是软件包1.2 yum常用命令1.3 好玩的yum包 2.Linux开发工具2.1 vim工具的由来2.2 vim模式①基本模式②派生模式 2.3 vim的基本操作2.4 vim正常模式命令集2.5 vim末行模式命令集2.6 简单vim配置 3.Linux编译器 - gcc/…

并发容器(三)BlockigQueue

阻塞队列 看几个常用的实现&#xff1a; 1.ArrayBlockingQueue是最简单的一种阻塞队列&#xff0c;底层是由数组实现 2.LinkedBlockingQueue 底层是由链表实现的&#xff0c;锁的粒度更细&#xff0c;但是占用的内存更大 当移除元素的时候takeLock和putLock一起加 3.Synchrono…

HCIP第七天

题目 拓扑图 1.所有路由器各自创建一个环回接口&#xff0c;合理规划IP地址 测试 2. R1-R2-R3-R4-R6之间使用OSPF协议&#xff0c;R4-R5-R6之间使用RIP协议 3. R1环回重发布方式引入OSPF网络 4. R4/R6上进行双点双向重发布 将OSPF中的环回接口改成broadcast 因为华为默认环回接…

用ChatGPT解析Wireshark抓取的数据包样例

用Wireshark抓取的数据包&#xff0c;常用于网络故障排查、分析和应用程序通信协议开发。其抓取的分组数据结果为底层数据&#xff0c;看起来比较困难&#xff0c;现在通过chatGPT大模型&#xff0c;可以将原始抓包信息数据提交给AI进行解析&#xff0c;本文即是进行尝试的样例…

4.4Java EE——多对多查询

订单和商品多对多关系图 在实际项目开发中&#xff0c;多对多的关联关系非常常见。以订单和商品为例&#xff0c;一个订单可以包含多种商品&#xff0c;而一种商品又可以属于多个订单&#xff0c;订单和商品属于多对多关联关系&#xff0c;订单和商品之间的关联关系如图。 在数…

springboot家政服务管理平台

本系统为了数据库结构的灵活性所以打算采用MySQL来设计数据库&#xff0c;而java技术&#xff0c;B/S架构则保证了较高的平台适应性。本文主要介绍了本系统的开发背景&#xff0c;所要完成的功能和开发的过程&#xff0c;主要说明了系统设计的重点、设计思想。 本系统主要是设…

通信算法之177: 基于Matlab的OFDM通信系统关键基带算法设计7-流程

一. 接收算法流程 1.1 粗同步&#xff08;分组检测&#xff09; 1.2 载波同步&#xff08;精细频偏估计&#xff09; 多普勒频偏和晶振。频率偏差&#xff0c;会破坏子载波间的正交性&#xff0c;且这种频差对相位的影响还具有累加性。 1.3 精同步&#xff08;OFDM起始&…

软件工程——第10章面向对象分析知识点整理

本专栏是博主个人笔记&#xff0c;主要目的是利用碎片化的时间来记忆软工知识点&#xff0c;特此声明&#xff01; 文章目录 1.分析工作主要包括哪三项内容&#xff1f; 2.面向对象分析是一个怎样的过程&#xff1f; 3.需求陈述是一成不变的吗&#xff1f; 4.复杂问题的对象…

web信息收集----网站指纹识别

文章目录 一、网站指纹&#xff08;web指纹&#xff09;二、CMS简介三、指纹识别方法3.1 在线网站识别3.2 工具识别3.3 手动识别3.4 Wappalyzer插件识别 一、网站指纹&#xff08;web指纹&#xff09; Web指纹定义&#xff1a;Web指纹是一种对目标网站的识别技术&#xff0c;通…

敞篷超跑造型,还支持4KHz回报,雷柏VT960 Pro游戏鼠标体验

想要在游戏中获得精准、迅速的操作反馈&#xff0c;鼠标的配置很重要&#xff0c;之前雷柏推出的支持4KHz的高回报率鼠标&#xff0c;很适合高刷显示器使用&#xff0c;最近我也上手了一款雷柏VT960 Pro。这只无线游戏鼠标采用了一种镂空“超跑”的外观设计&#xff0c;还带有个…

【C语言基础】内存布局和作用域

(꒪ꇴ꒪(꒪ꇴ꒪ ),hello我是祐言博客主页&#xff1a;C语言基础,Linux基础,软件配置领域博主&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff01;送给读者的一句鸡汤&#x1f914;&#xff1a;集中起来的意志可以击穿顽石!作者水平很有限&#xff0c;如果发现错误…

UnityVR--机械臂场景10-简单流水线应用2

目录 一. 前言 二. 事件中心修改 三. 机械臂加入DoTween的运动 四. 机械臂关节的控制 一. 前言 上一篇已经完成了流水线的搭建&#xff0c;本篇要完成的是&#xff1a;1. 事件中心的修改&#xff1b;2. 机械臂的DoTween运动改造&#xff1b; 本篇是在事件中心2和机械臂场景…

macOS Ventura 13.5beta5(22G5072a)发布

系统介绍 黑果魏叔 7 月 11 日消息&#xff0c;苹果今日向 Mac 电脑用户推送了 macOS 13.5 开发者预览版 Beta 5 更新&#xff08;内部版本号&#xff1a;22G5072a&#xff09;&#xff0c;本次更新距离上次发布隔了 12 天。 macOS Ventura 带来了台前调度、连续互通相机、Fa…