问题描述:
在PyCharm中导入了pytorch模块,之前一直可以正常使用,不知道为什么突然cuda用不了了,测试出现了torch.cuda.is_available()返回False问题
解决方案:
刚开始我在PyCharm之前设置的环境中重新安装pytorh,但是一直不行,于是我参考了网上解决方法,重新创建了新的虚拟环境,直接在官网上装Pytorch(GPU)版本,解决了问题
解决步骤:
一、首先创建个新的虚拟环境
(1)win+R,打开cmd窗口,输入
conda create -n pytorch(这里是虚拟环境名称) python==xx(这里是想要创建的虚拟环境的python版本号)
我这里选择python的版本是3.10,然后回车,开始创建虚拟环境,出现这个表示创建成功
(2)然后输入命令:conda env list , 可以看到已创建的环境
conda env list
(3)进入环境,输入命令:activate pytorch , 就可以进入pytorch环境中,
activate pytorch
因为我创建的conda环境在D盘,所以更改了路径
创建完pytorch虚拟环境后,需要安装pytorh版本,这里建议直接从官网上安装,首先退出cmd,重新打开cmd
二、安装pytorch(gpu)
(1)查看下载的CUDA版本
CUDA安装参考:Tensorflow-gpu保姆级安装教程(Win11, Anaconda3,Python3.9)_tensorflow-gpu 安装_酷酷的懒虫的博客-CSDN博客
在命令行输入:nvidia-smi ,查看CUDA版本,这里看到我的CUDA版本为12.0,这里CUDA版本主要是影响安装的torch、torchvision、torchaudio三个组件
nvidia-smi
(2)下载torch、torchvision、torchaudio安装文件
下载网址:https://download.pytorch.org/whl/cu102
首先选择torch版本,这里cuxx表示下载的CUDA版本,我这里下载的是CUDA12.0版本,由于没有cu120, 因此这里按照CUDA11.8版本配置,选择cu118, cpxx表示安装的python版本,由于上述步骤安装的python版本是3.10,因此这里按照cp310配置
在下载界面ctrl+F,搜索[cu118-cp310-cp310-win],找到所需的版本下载
然后去PyTorch官网: Previous PyTorch Versions | PyTorch
查找该torch版本对应的torchvision和torchaudio版本,这里torch版本为2.0.1,因此ctrl+F,查找
pip install torch == 2.0.1 ,并且CUDA 为11.8版本
因此,查询得到torchvision需要0.15.2版本,torchaudio为2.0.2版本。
从这个之前的下载网址:https://download.pytorch.org/whl/cu102
继续选择安装的torchvision和torchaudio版本下载
下载完毕后,最好将三个下载文件放在同一文件夹中
(3)安装torch、torchvision、torchaudio
win+R, 进入cmd命令,然后按照之前的方法进入到pytorh环境中安装torch、torchvision、torchaudio
依次输入下面代码(每输入一个安装一个,不是一次输入完)
pip install "D:\Py\pytorch_whl\torch-2.0.1+cu118-cp310-cp310-win_amd64.whl"
pip install "D:\Py\pytorch_whl\torchaudio-2.0.2+cu118-cp310-cp310-win_amd64.whl"
pip install "D:\Py\pytorch_whl\torchvision-0.15.2+cu118-cp310-cp310-win_amd64.whl"
然后等待安装,安装完毕后,输入python→回车→import torch→回车→ torch.cuda.is_available()进行测试,输出True结果,安装成功
三、更改Pycharm软件环境
回到Pycharm软件,更改设置
选择创建好的pytorh环境即可
参考链接:pytorch gpu版安装(普适稳妥,亲测有效) - 知乎Previous PyTorch Versions | PyTorch