文章目录
1. torch - torchvision - python 版本对应关系
从表中可以看出,在使用 anaconda 创建虚拟环境时,将 python 的版本定为 3.7 最为合适,当然最好还是根据你自己的需要选择 python 版本。
conda create -n 环境的名字 python=3.7
2. CUDA Toolkit 和PyTorch的对应关系
3. 安装说明
3.1 用 anaconda 安装 pytorch
anaconda 新建虚拟环境后,直接在 pytorch 官网官网链接 找到 “Install” 按钮。这里一键搞定torch,torchvision,cudatoolkit 等等。有以下几点需要注意和知晓的:
-
前提需要安装好 NVIDIA 驱动 。
-
不需要另外安装 CUDA(我在没有单独安装 CUDA 情况下,功运行了 torch-gpu )。
-
与电脑或者服务器上已经装好的 CUDA 不会发生冲突 (这一点相比安装 tensorflow 要友好得多)。
-
anaconda 会自动对应匹配 torch,torchvision,cudatoolkit 等的版本。不过在创建虚拟环境的时候要选择合适的 python 版本 。
-
如果不指定 torch 版本,这里一般下载最新的 torch 版本 。
-
anaconda 将 torch、torchvision、cudatoolkit 、python 等等依赖包都集成在创建的虚拟环境里,统一管理依赖包,匹配各自之间的版本。
有一点是需要特别注意的,但是在你们安装时,不一定会碰得上。在不指定版本的情况下,anaconda 会下载最新能匹配的依赖包版本 ,但不一定是你需要的版本;在指定下载版本的情况下,如果用 conda install xxxx=verision1
, anaconda 中如果没有版本为 version1 的 xxxx 依赖包,则会直接报错,如果是使用 pip install XXX==version2
,即使是 anaconda 中没有版本为 version2 的 XXX 依赖包,anaconda 也不会报错,并且使用命令 conda list 会显示安装了 version2 版本的 XXX 依赖包,但是实际上并没有安装好该依赖包 。
conda 安装 pytorch 指令如下
conda install pytorch torchvision cudatoolkit=10.2
有以下几点需要注意:
- 有镜像源的情况下,去掉末尾的“-c pytorch”会更快,否则经常容易下载超时 。
- 这里 install 后面不加 cudatoolkit ,则默认安装的是 cpu 版本的 torch 。
- 这里涉及到设置 anaconda 镜像源的问题,大家可以查阅相关优质博客,我这里就不赘述 。
- conda下载超时的时长可以设置 。
conda config --show
conda config --set remote_connect_timeout_secs 40
conda config --set remote_read_timeout_secs 100
conda config --show #查看conda设置
conda config --set #设置对应的参数
3.2 不用 anaconda 管理环境
严格仔细对照 torch、torchvision、cuda 之间的对应关系,还有 NVIDIA 和 CUDA 版本的关系。
3.3 对 NVIDIA 驱动的要求
和 NVIDIA 驱动直接关联的是 CUDA 的版本。如果安装的是 CUDA=10.0.130
,那么在 Windows 系统要求 NVIDIA 驱动大于 411.31 ,不需要严格等于 411.31。如果小于 411.31 ,则会报错显示驱动版本过旧。我是将 NVIDIA 驱动 更新至最大 456.38,正常使用。
3.4 下载 .whl 文件离线安装
https://download.pytorch.org/whl/torch_stable.html
根据前面的对应关系,下载好适合你的版本的 torch 、torchvision。cu102 # 表示 CUDA=10.2 ,cp37 # 表示 python=3.7 ,linux or win 。
下载好 torch 、torchvision 的 .whl 文件后,用 pip 安装,先 cd 到下载的文件夹
pip install torch-1.7.0+cu101-cp36-cp36m-win_amd64.whl
pip install torchvision-0.8.0-cp36-cp36m-win_amd64.whl
测试 GPU 版本的 torch 是否安装成功
(torch) D:\MyData\xiaCN\Desktop\Work\unbiased> python
Python 3.6.13 (default, Feb 19 2021, 05:17:09) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> torch.cuda.is_available()
True
3.5 使用 pip 语句在线安装
使用 pip 在线安装的前提是,你自己已经对应好了 torch 、torchvision、python 的关系,直接一行命令下载。
指定下载版本
pip install torch==1.0.0 torchvision==0.2.1 -f https://download.pytorch.org/whl/cu100/torch_stable.html
这种情况下,如果 torch 、torchvision 的版本与 python 的版本不适配,会导致即使 conda list
查看安装了 torch 、torchvision ,但是 在使用 torch 时,仍然会报错。
不指定下载版本
pip install torch torchvision -f https://download.pytorch.org/whl/cu100/torch_stable.html
注意,cu100 表示安装的是可以与 CUDA 10.0 相匹配的 torch 和 torchvision 。
3.6 安装 torch-cpu
首先,当然是认真对应好 torch 、torchvision、python 的关系。
接着,按照前面讲的多种方法,
- conda 语句安装
conda install pytorch torchvision
安装指定版本,先查看 anaconda 中有的 pytorch 版本
conda search -c https://conda.anaconda.org/menpo pytorch*
在这里插入代码片
conda install pytorch=0.2.0 torchvision
- 离线 .whl 文件安装
在网站 https://download.pytorch.org/whl/torch_stable.html,找到合适的 cpu-torch 下载文件,和 3.4 同样的安装方式。
- pip 在线安装
使用 pip 在线安装的前提是,你自己已经对应好了 torch 、torchvision、python 的关系,直接一行命令下载。
指定下载版本
pip install torch==1.0.0 torchvision==0.2.1 -f https://download.pytorch.org/whl/torch_stable.html
这种情况下,如果 torch 、torchvision 的版本与 python 的版本不适配,会导致即使 conda list
查看安装了 torch 、torchvision ,但是 在使用 torch 时,仍然会报错。
不指定下载版本
pip install torch torchvision -f https://download.pytorch.org/whl/torch_stable.html
注意,这两个网站,离线下载 .whl 文件的网站 https://download.pytorch.org/whl/torch_stable.html 和 pip 在线安装 torch-gpu 的网站 https://download.pytorch.org/whl/cu100/torch_stable.html ,唯一的差别就是 cu100,这说明不论是离线安装还是 pip 在线安装,都是在这个网站,安装 GPU 版本就加上 cu100 。其实安装其他的依赖包比如 opencv 等,你也可以找到类似的 .whl 文件离线下载安装,或者 pip 在线通过 pip install opencv-python -c https://XXX.xxx/xxx
安装。
希望上述内容能对你安装 torch 有帮助。码字不易,记得点赞哈!