PyTorch网上有很多安装教程,但是我尝试很多种都没有成功安装,下面介绍个人成功的方法。
目录
1、查看显卡驱动版本
打开命令行,输入:
nvidia-smi
确定自己显卡驱动支持的最高CUDA版本,如图我的最高支持CUDA12.2版本,如果需要下载更高版本的CUDA,可以更新显卡驱动,我的是537.13版本驱动,更新之后显卡玩游戏可能会变卡,尽量不动它。
2、前往PyTorch官网下载PyTorch
PyTorch官网下载链接:Start Locally | PyTorch
查看当前支持的计算平台,显示有CUDA 11.8版本和CUDA 12.1版本,最好选择比较新的版本,第一步的时候显示我的显卡驱动最高支持CUDA 12.2版本,所以我选择低于12.2且较新的12.1版本。注意不要使用下面的命令行直接输入下载,特别是conda下载,很大概率即使选择了CUDA版本还是会下载CPU版本的PyTorch!!!
直接输入conda命令的话会发现,当要输入y/n的时候,先不要无脑输入y,翻上去可以发现下载的居然是CPU版本的,为了避免下载版本错误以及下载速度慢的问题,我认为最好的解决方法是先本地下载再安装。
我们点击进入Previous PyTorch Versions以往版本的PyTorch下载页面。Previous PyTorch Versions | PyTorch
找到自己需要的版本,我按照的版本是v2.1.0的版本
看到CUDA 12.1版本的下面的命令,即
conda install pytorch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 pytorch-cuda=12.1 -c pytorch -c nvidia
注意!!!这时候也不要使用这个命令直接输入下载,我们主要是查看pytorch、torchvision和torchaudio三个包的对应的版本号,便于我们本地下载时选择正确的版本,因为版本不兼容可能会导致一些问题。可以发现我们要下载的版本有pytorch==2.1.0、torchvision==0.16.0、torchaudio==2.1.0,然后我们去下载三个包的对应版本到本地。
3、下载对应PyTorch包到本地
继续去官网下载地址:Start Locally | PyTorch
选择pip方式下载
查看后面的下载命令的目标网址
https://download.pytorch.org/whl/cu121
复制后面的网址前往下载仓库
进入下载仓库后找到torch、torchaudio、torchvision。
找到对应版本。下载速度慢建议使用迅雷下载,很快!!下载时复制下载链接粘贴到迅雷!!!
torch-2.1.0+cu121-cp39-cp39-win_amd64.whl,cu121表示CUDA版本12.1,cp表示我的python为3.9版本,win表示是Windows系统。
torchaudio-2.1.0+cu121-cp39-cp39-win_amd64.whl
torchvision-0.16.0+cu121-cp39-cp39-win_amd64.whl
全部下载后使用pip命令进行安装,如果使用的是Anaconda可以去Anaconda Prompt里执行
如果没有Anaconda直接去cmd里执行就行了。
pip install E:\torch-2.1.0+cu121-cp39-cp39-win_amd64.whl
pip install E:\torchaudio-2.1.0+cu121-cp39-cp39-win_amd64.whl
pip install E:\torchvision-0.16.0+cu121-cp39-cp39-win_amd64.whl
改为自己下载包的路径即可。安装后我们输入命令pip list或者conda list可以发现这些包都成功导入了,而且是CUDA版本的包!!!
我们测试一下是否成功安装,进入python环境
依次输入,可以发现成功安装CUDA12.1的PyTorch!!!
import torch
print(torch.__version__)
print(torch.cuda.is_available())
print(torch.version.cuda)
4、总结
最后我发现我并没安装CUDA和cuDNN,但是依然可以在代码中使用PyTorch进行训练,我实验发现安装了CUDA和cuDNN,居然和没安装CUDA、cuDNN居然是一样的,而且训练速度一样,也都能正常训练。使用nvcc -V命令检查
表示我并没有安装CUDA,但是依然能训练,而且和安装了CUDA的速度基本一样,所以我直接将CUDA卸载了,毕竟这东西占空间。最后我想说,英伟达就是一坨大变。