【windows:‘nvidia-smi‘ 不是内部或外部命令;Ubuntu:NVIDIA-SMI has failed because it couldn‘t communicate with】

一、windows发现问题

在这里插入图片描述
‘nvidia-smi’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

二、问题解决

1、NVIDIA驱动的默认安装路径是在:C:\Program Files\NVIDIA Corporation\NVSMI,将该路径添加到系统的环境变量中的Path中,再一路确定即可。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2、重新打开cmd窗口,输入nvidia-smi进行测试,成功显示即可,可以本机电脑的CUDA版本号。
在这里插入图片描述

注意:

win10系统高版本显卡驱动是不需要使用nvidia-smi.exe文件的,想要查看显卡占用率可以直接在命令行窗口输入:nvidia-smi

下载完cuda和cudnn后,nvidia-smi打不开了,打开任务管理器发现GPU消失了。

点击->此电脑->管理->设备管理器->往下拉有一个显示适配器->然后我发现上面有一个黄色感叹号->下载安装了最新的驱动,选择的第一个->然后再次输入nvidia-smi就好了
在这里插入图片描述

Ubuntu

NVIDIA驱动失效简单解决方案:NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver.

问题:
机器已经安装nvidia驱动,且正常使用,重启后找不到显卡驱动

打开终端,用nvidia-smi查看一下,发现如下报错:
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver.
Make sure that the latest NVIDIA driver is installed and running.

分析:
查看发现系统中的显卡驱动自动升级了,重启后没有正常找到驱动

解决:
第一步,使用nvcc -V检查驱动和cuda。

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Sun_Mar_21_19:15:46_PDT_2021
Cuda compilation tools, release 11.3, V11.3.58
Build cuda_11.3.r11.3/compiler.29745058_0

发现驱动是存在的,于是进行下一步

第二步,查看已安装驱动的版本信息

ls /usr/src | grep nvidia

比如我的驱动版本是:nvidia-545.23.08

第三步,依次输入以下命令

sudo apt-get install dkms
sudo dkms install -m nvidia -v 545.23.08

等待安装完成后,再次输入nvidia-smi,查看GPU使用状态:

最后,我们熟悉的页面又回来了!

第四步,本来到这就结束了,但发现显卡没被占用,但利用率却有:
问题:
在这里插入图片描述

执行以下命令,解决

sudo nvidia-smi -pm 1

如果是poman创建环境无法使用nvidia-smi命令

solution:

一般没有额外配置时在容器中执行nvidia-smi会报错无法识别该命令,原因在于少了配置(并不是要在容器中再次安装一次NVIDIA驱动)。

# 安装驱动
### 解决方案概述 当遇到 `NVIDIA-SMI` 无法与 NVIDIA 驱动程序通信的问题时,通常是因为驱动未正确安装运行环境存在问题。以下是可能的原因以及解决方案: #### 可能原因分析 1. **NVIDIA 驱动未正确安装**:即使通过命令安装了驱动,也可能由于版本不匹配其他依赖项缺失导致失败[^1]。 2. **图形界面服务冲突**:某些情况下,系统中的显示管理器(如 LightDM GDM)可能会干扰 GPU 的正常工作[^2]。 3. **硬件兼容性问题**:GPU 和主板 BIOS 版本可能存在不兼容的情况[^3]。 --- ### 具体解决方法 #### 方法一:重新安装最新的 NVIDIA 驱动 确保已卸载旧版驱动并安装最新版本的 NVIDIA 驱动程序: ```bash sudo apt-get purge nvidia* sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo ubuntu-drivers autoinstall ``` 完成上述操作后重启计算机以加载新驱动。 #### 方法二:验证驱动状态 执行以下命令确认驱动是否成功加载到内核中: ```bash lsmod | grep nvidia ``` 如果没有任何输出,则说明驱动未能加载。此时可以尝试手动加载模块: ```bash sudo modprobe nvidia ``` #### 方法三:禁用 Nouveau 开源驱动 有时开源驱动会与专有驱动发生冲突。可以通过编辑 GRUB 文件来禁用它: ```bash sudo nano /etc/modprobe.d/blacklist-nouveau.conf ``` 在文件中添加以下两行内容: ```plaintext blacklist nouveau options nouveau modeset=0 ``` 保存更改后更新引导配置并重启: ```bash sudo update-initramfs -u sudo reboot ``` #### 方法四:排查 X Server 设置 如果仍然存在错误消息提示无法连接至驱动,请检查当前使用的显示管理器是否存在异常行为。例如切换回默认选项之一试试看效果如何: ```bash sudo dpkg-reconfigure gdm3 # 者对于其他桌面环境来说可能是下面这个命令 sudo systemctl set-default graphical.target ``` #### 方法五:调试日志查看 最后一步就是深入挖掘系统日志寻找更多线索: ```bash dmesg | grep -i nvidia journalctl -xe | grep -i nvidia ``` 这些工具可以帮助定位具体哪个环节出了差错[^2]。 --- ### 总结 按照以上步骤逐一排除潜在隐患之后再试一次原初指令看看情况有没有改善。假如依旧报同样的错则考虑更换不同系列号者厂商提供的闭源包测试一下适配度怎样[^3]。 相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值