前言:
最近学习pytorch,在安装配置环境时花了很大功夫,实际上整件事情并不难,但是由于有很多细节比如版本匹配问题,可能会踩很多坑,从而浪费大量时间,故我在成功安装配置完pytorch后,写下一点总结,为后来者提供一些参考,使能够将更多的时间真正专注于科研上,而不必在安装配置上徒添烦恼。
一、安装流程
关于安装pytorch的教程很多,不过质量参差不齐,查阅了很多教程,这篇“2023最新pytorch安装(超详细版)”非常详细具体,总体流程可完全参照这篇文章。大的环节如下:
graph LR 安装Anaconda--是否有GPU?-->安装CPU/GPU版pytorch在安装pytorch前安装Anaconda是因为Anaconda可以解决pip带来的不同Python包之间的冲突问题,而且可以创建多个虚拟环境,方便管理,避免所有的包都安装在原生环境上。
安装CPU版和GPU版操作亦有所区别,如果不小心安装了CPU版本,还想继续安装GPU版本的话,可以再创建一个虚拟环境安装GPU版,CPU版可删可不删。
虚拟环境的创建上面的文章中有。
二、相关细节
1.版本问题
有三个版本需要关注,python版本、cuda版本、pytorch版本。选择的时候需要相互匹配,不然可能安装失败或者运行时出bug。具体的版本对应关系可以参考其他博主的总结,这里提一些注意点。
关于版本对应关系,我的思路是:先根据显卡驱动确定cuda版本,根据cuda可以确定pytorch版本,最后确定python版本。这是确定版本的思路,安装过程跟着上面那篇博文里来就行。
-
安装Anaconda时可能会安装上最新版本的python,但是没关系,可以在创建虚拟环境时额外指定python版本,
conda create –n 虚拟环境名字 python=版本
(这就是创建虚拟环境的命令)
比如你安装Anaconda附带的python是v3.12,可以在创建虚拟环境时使用conda create –n pytorch python=3.8
,从而安装3.8版本。 -
如果有GPU,在win+r,cmd后输入nvidia-smi,可以看见
原作者解释:我的CUDA Driver版本就是11.6,表示的是驱动所能支持的最大运行API版本就是11.6。我如果要安装CUDA Runtime Version(运行版本),要保证CUDA Driver 版本 >= CUDA Runtime 版本,也就是11.6及以前的。
上面的CUDA Version是CUDA Driver版本,还要装一个CUDA Toolkit(也就是作者说的CUDA Runtime),当然电脑里可能已经有了,此时用
nvcc -V
可以查看,如果没有,可以直接去英伟达官网下载,并且会自动添加环境变量,下载时注意版本。此时再次查看应出现如下结果:
有些博主提到一种情况,就是电脑里已经有CUDA Toolkit了,但是nvcc -V查看不了,可能是因为没有添加环境变量的原因,此时重新添加环境变量就好了。建议是直接重新下一个CUDA Toolkit,因为你可能根本找不到文件在哪。成功添加环境变量后是这样的:
-
安装完cuda后,接着去下载pytorch。比如pytorch的其中一种下载链接
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
这里的cu117就是指cuda11.7,说明这个pytorch版本与cuda11.7版本是匹配的。
2.pytorch下载速率问题
常见的方法是换国内源,作者在文中已经提到。但是比如当我从官方pytorch获得的下载链接是(也有部分下载链接没有后面这一串https网址,此时下起来好像会很快)
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
那么就算换了源好像还是从原官方网站下载(也许可以将后面的https地址替换为国内的从而避免这个问题,但我没试过),而如果你将后面的https删掉,也就是用
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1
可能就会报错。这里提供另一种不用换国内源也很快的方法————本地安装。
当我们进行到这一步时已经确定了pytorch的官方pip链接,比如上文中的pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
,事实上下载的是三个包,torch,torchvision,torchaudio,因此你根据这个链接里的包以及对应版本,直接网上去下载whl文件到本地,然后再本地安装。比如torch==1.13.1+cu117这个包:
图片中有如cp38-cp38这样的字眼,可能是该包版本的又一个细分,如果你不知道具体选哪个,可以先运行上面那个链接
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
,然后再ctrl+c终止,就会具体的显示出是cp38还是cp39又或是cp37之类的。
这里给出这三个包的下载地址:
torch
torchvision
torchaudio
全部下载完后pip安装whl文件就行。
这里以我配置的为例,版本情况:python3.8,cuda11.7,本地安装pytorch的代码是:
pip install torch-1.13.1+cu117-cp38-cp38-win_amd64.whl
pip install torchaudio-0.13.1+cpu-cp38-cp38-win_amd64.whl
pip install torchvision-0.14.1+cu117-cp38-cp38-win_amd64.whl
install后面那一串就是文件名。
接着再根据上面博文中的写的验证是否安装成功,便全部完成了。
标签:Windows,cu117,pytorch,CUDA,版本,注意事项,pip,安装 From: https://www.cnblogs.com/HorizonTree/p/18431048本博客是对该作者博文的一个补充,该作者已经写的十分详细,但我自己安装的时候还是遇到了很多麻烦,故此在此总结。我只能说明我个人情况,诸位在安装时可能还会遇到别的莫名其妙的问题,恕我不能面面俱到。