NVIDIA-SMI有关问题(NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver)

前几天一直在给笔记本装软件和配置文件,之前都装好了Ubuntu的显卡驱动、caffe、opencv、anaconda、pytorch、pycharm等等,
结果今天在准备跑项目是运行
watch -n 0.1 nvidia-smi #每隔0.1秒刷新一次

NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

同样: nvidia-smi

问题:

ckq@ckq:~$ uname -r
4.15.0-91-generic
ckq@ckq:~$ 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.

当时一下子懵逼,想想好几天装了环境,结果功亏一篑,心态炸了,网上也有教程说重装显卡驱动,虽然不烦,但是也很头疼,虽知道装好又会出什么幺蛾子,幸好看到一个博客,终于知道哪里出了问题。
原因是因为不知道怎么滴,更新了,内核版本,导致内核版本太高。参考出处

按他的步骤我进行了低版本的内核进去,发现是可行的

ckq@ckq:~$ nvidia-smi
Fri Mar 20 10:56:56 2020       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.64       Driver Version: 440.64       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 GTX 850M    Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   43C    P0    N/A /  N/A |      0MiB /  2004MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

分析:由于我的显卡驱动是在低版本的时候安装的,由于更新的原因,内核版本升级导致NVIDIA无法应用在高内核版本,所以是内核版本的原因,选择吧默认内核版本改成之前的低版本!!!

修改Ubuntu的默认开机启动的内核版本

执行:`sudo gedit /etc/default/grub

把文档内容做修改:

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet aplash"
GRUB_CMDLINE_LINUX=""

改成:

GRUB_DEFAULT="1>3"
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet aplash"
GRUB_CMDLINE_LINUX=""

修改的GRUB_DEFAULT= 由0改为"1>3"

(注:1 代表主菜单的第二项Advanced options for Ubuntu;3代表1项目下面对应的子菜单里面的第4项;)
参考出处

保存后,

sudo update-grub
ckq@ckq:~$ sudo update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.0-91-generic
Found initrd image: /boot/initrd.img-4.15.0-91-generic
Found linux image: /boot/vmlinuz-4.15.0-88-generic
Found initrd image: /boot/initrd.img-4.15.0-88-generic
Found linux image: /boot/vmlinuz-4.13.0-36-generic
Found initrd image: /boot/initrd.img-4.13.0-36-generic
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin
Found Windows 10 (loader) on /dev/sdb1
done

重新启动,这时应该默认启动旧的内核版本。

再次查看内核版本

查看:uname -r
ckq@ckq:~$ uname -r
4.15.0-88-generic

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值