Torch.cuda.is_available() keeps switching to False

时间:2019-04-16 23:09:53

标签: pytorch torch

I have tried several solutions which hinted at what to do when the CUDA GPU is available and CUDA is installed but the Torch.cuda.is_available() returns False. They did help but only temporarily, meaning torch.cuda-is_available() reported True but after some time, it switched back to False. I use CUDA 9.0.176 and GTX 1080. What should I do to get the permanent effect?

I tried the following methods:

https://forums.fast.ai/t/torch-cuda-is-available-returns-false/16721/5 https://github.com/pytorch/pytorch/issues/15612

3 个答案:

答案 0 :(得分:1)

  1. 按照此链接中的说明,使用apt-get安装CUDA 9.1:

https://cryptoandcoffee.com/mining-gems/cuda-9-0-install-ubuntu-16-04-apt-get/

  1. 使用pip安装了PyTorch:

    pip install torchvision ( this will install both torch and torchvision )
    
  2. 重新启动

现在尝试:

~$ python -c 'import torch; print torch.cuda.is_available()'

答案 1 :(得分:0)

还有torch.cuda.is_available ()也有假。
但是,当将 Nvidia 驱动程序安装到最新版本 436.48 时,将显示True。我以前将 Pytorch更新为1.2.0 。 我有Windows 10和 Anaconda

enter image description here

答案 2 :(得分:0)

我也看到了这个问题。原因是Pytorch使用的CUDA版本与已安装的Nvidia驱动程序不同步。就像乔的回答一样,解决方案是更新Nvidia驱动程序。需要注意的其他一些重要背景信息:

  • 每个CUDA版本都需要特定的Nvidia驱动程序版本(有关兼容性表,请参见here)。
  • 您可以使用nvidia-smi检查Nvidia驱动程序版本。
  • Pytorch预包装了CUDA版本,该版本可能与您计算机上安装的版本不同。
  • 您手动安装的CUDA版本是在运行nvidia-smi时显示的版本。即使您的驱动程序版本与此CUDA版本兼容,它也可能与Pytorch CUDA版本不兼容。
  • 您可以通过在ipython或Python程序中打印torch.cuda.version变量来获得Pytorch CUDA版本。这是确定所需的Nvidia驱动程序版本的版本。