torch.cuda.is_available() = False的解决方法

1. 首先看下pytorch版本和能否用GPU

    print(torch.__version__)

    print(torch.cuda.is_available())

2. 如果不能,解决方法如下

又名 CUDA和pytorch版本不对应

Step1: 查看CUDA版本
    # 转载https://blog.csdn.net/qq_38295511/article/details/89223169
    # CUDA = 11.0.208 driver

    # 或者cmd打开命令行,输入nvidia-smi

Step2: 查看CUDA和Pytorch的对应关系(可能不准,需要到pytorch官网查看下载torch时对应的CUDA版本)
    # 转载https://www.cnblogs.com/zhoujiayingvana/p/15827369.html



Step3: 如果CUDA版本低,pytorch版本高,就升级电脑的CUDA驱动
    # 官方驱动下载网站: https://www.nvidia.cn/geforce/drivers/
    # 历史版本的驱动程序:
    #     官网:https://www.nvidia.cn/Download/Find.aspx?lang=cn
    #     (法二)转载:https://blog.csdn.net/qq_40493763/article/details/107469539
    # 注意: 虽然GeForce Game Ready看起来是游戏, 但其实是正经的驱动


Step4: 查看CUDA(如11.3)和驱动程序(如512.15)对应关系
    # 官网手动搜索驱动程序:提供的是 驱动程序版本: 512.15 ,不是直接的CUDA版本
    # 官网: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html


Step4: 发现自动更新后CUDA版本为11.6,pytorch版本为1.11.0
    # 然而目前pytorch最多支持CUDA11.3
    # 现在变成CUDA版本太高了


Step5: 手动下载NVIDIA驱动程序,可以更换电脑的CUDA版本
    # 下载好驱动程序后,直接安装新下载的驱动即可,它自动把老驱动卸载了


其实:超过11.3版本的CUDA,也可以直接pip安装11.3对应的pytorch
高版本CUDA解决方法:(转载)
1. https://www.zhihu.com/question/482335084
2. https://discuss.pytorch.org/t/pytorch-cuda-11-6/149647


Step6: torch和torchvision的对应关系
    # https://github.com/pytorch/vision


Step7: 注意: pip install torch, 下载的是cpu版本的
    # 需要到pytorch官网按照他的命令下载
'''

你可能感兴趣的:(python)