pytorch无法使用GPU问题的解决方法

 更新时间:2024年02月28日 11:14:47   作者:假装很坏的谦谦君  
这篇文章主要介绍了如何解决pytorch 无法使用GPU 的问题,文中通过代码和图文给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下

本教程介绍了如何解决pytorch 无法使用GPU 的问题,

问题描述:

之前我电脑已经安装好CUDA 10.1 的环境,驱动也是安装好的,安装了tensorflow-gpu ,并且可以正常使用tensorflow gpu 版来训练。今天有同学问我一些pytorch 的安装问题,我之前没有安装过,所以实践了一下,安装过程很顺利,找到官方网站,找到安装的地方,复制命令,使用anconda 进行了安装:

在这里插入图片描述

安装完成之后,我迫不及待的测试了一下是否安装成功和能否使用GPU:

import torch
print(torch.cuda.is_available())

结果返回的结果是False,也就是不可以使用GPU版本的pytorch,这让人很烦。

问题解决思路

根据以往tensorflow安装时候的问题解决思路,我猜测可能是cuda版本和pytorch 的版本对不上,我仔细对照了半天,发现不是这里的问题。所以问题可能出在cuda 和 显卡驱动上面。

我输入命令:nvidia-smi,正常的话会输出显卡驱动的相关信息,但是这里报错了,报错信息为:
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver

显卡驱动出问题了? 那重装一下驱动应该就可以解决问题,但是在ubuntu上安装驱动有点繁琐,所以我又测试了一下tensorflow-gpu 版本是否可以使用,输入一下代码:

import tensorflow as tf

发现竟然没有报错,陷入僵局了,这一句话没报错驱动应该没问题啊,我开始查找问题的答案,百度搜索了一下这个报错:NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver
最终得出的结论是就是显卡驱动坏了,我参考网上的解决办法,执行了以下命令,成功的解决了问题。

首先安装 dkms

sudo apt-get install dkms

然后查看自己驱动的版本

ls /usr/local

输出结果如下:

在这里插入图片描述

执行以下命令:

sudo dkms install -m nvidia -v 418.43

注意命令后的版本要和上图中的版本一致!

验证是否生效

nvidia-smi 命令执行正常了。

在这里插入图片描述

验证pytorch:

在这里插入图片描述

问题成功解决了

后记

刚刚提到了一个奇怪的现象,显卡驱动不正常,tensorflow-gpu 竟然可以成功的import,但是后来经过测试发现,虽然没有报错,但是训练过程使用了CPU,没有使用GPU,运行的时候会报错说 GPU驱动没有运行之类的错误,然后使用CPU进行了训练(直观感觉就是慢了很多)。

为什么会出现显卡驱动坏了的情况?猜测是系统更新造成的,因为之前我使用tensorflow-gpu的时候是正常的,并且没有做任何的改动,所以很有可能是更新造成的损坏。

以上就是pytorch无法使用GPU问题的解决方法的详细内容,更多关于pytorch无法使用GPU的资料请关注脚本之家其它相关文章!

相关文章

  • Python socket非阻塞模块应用示例

    Python socket非阻塞模块应用示例

    这篇文章主要介绍了Python socket非阻塞模块,结合实例形式分析了Python socket非阻塞模块通信相关操作技巧,需要的朋友可以参考下
    2019-09-09
  • 如何解决cmd运行python提示不是内部命令

    如何解决cmd运行python提示不是内部命令

    在本篇文章里小编给大家整理了关于如何解决cmd运行python提示不是内部命令的相关内容,有兴趣的朋友们学习下。
    2020-07-07
  • Python 导入文件过程图解

    Python 导入文件过程图解

    这篇文章主要介绍了Python 导入文件过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • 详解Python中open()函数指定文件打开方式的用法

    详解Python中open()函数指定文件打开方式的用法

    well,我们这里所指的文件打开方式并不是指调用什么应用程序去打开某个文件,而是只读只写或者二进制等的打开方式,这里我们就来详解Python中open()函数指定文件打开方式的用法
    2016-06-06
  • Python实现中文数字转换为阿拉伯数字的方法示例

    Python实现中文数字转换为阿拉伯数字的方法示例

    这篇文章主要介绍了Python实现中文数字转换为阿拉伯数字的方法,涉及Python字符串遍历、转换相关操作技巧,需要的朋友可以参考下
    2017-05-05
  • PyQt5每天必学之滑块控件QSlider

    PyQt5每天必学之滑块控件QSlider

    这篇文章主要为大家详细介绍了PyQt5每天必学之滑块控件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • Python内省与反射巧妙运用示例

    Python内省与反射巧妙运用示例

    这篇文章主要为大家介绍了Python内省与反射巧妙运用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • pycharm在调试python时执行其他语句的方法

    pycharm在调试python时执行其他语句的方法

    今天小编就为大家分享一篇pycharm在调试python时执行其他语句的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • python装饰器代码解析

    python装饰器代码解析

    这篇文章主要介绍了python装饰器代码解析,文章分享的内容有装饰器通用模型及一些关键点,通过举例详细介绍,具有一的参考价值,需要的朋友可以参考一下
    2022-03-03
  • 如何用python写个模板引擎

    如何用python写个模板引擎

    这篇文章主要介绍了如何用python写个模板引擎,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2021-01-01

最新评论