Linux安装PyTorch

我本人第一次使用 Linux 跑代码,命令行端其实用的十分不熟练而且不熟悉,因此在此期间犯了很多错误,在这里总结一下。

以下操作都要基于anaconda虚拟环境操作,否则出错特别容易崩,血的教训!!!

PyTorch 的安装

安装 PyTorch 去官网安装就好啦,附上链接:Start Locally | PyTorch

选择自己机器对应的版本,这里其实需要注意自己 GPU 的算力,不然可能会出现以下报错:

1
2
GeForce RTX 3090 with CUDA capability sm_86 is not compatible with the current PyTorch installation.
The current PyTorch install supports CUDA capabilities sm_37 sm_50 sm_60 sm_70.

比如我一开始安装的是 CUDA 10.2,出现了如下报错。这个的意思是说当前 PyTorch 依赖的 CUDA 版本支持的算力只有3.7、5.0、6.0、7.0。

算力7.0的显卡可以在支持最高算力7.5的CUDA版本下运行,但是算力7.5的显卡不可以在支持最高算力7.0的CUDA版本下运行。 同理算力8.x的显卡不可以在支持最高算力7.x的CUDA版本下运行。

如何查看 CUDA 对应什么算力的 GPU 呢?

查看 CUDA 文档与查看 GPU 算力。

CUDA 文档NVIDIA Ampere GPU Architecture Compatibility Guide :: CUDA Toolkit Documentation

可以看到,CUDA 11.0 可以生成算力为8.0(其实应该是8.x)的 cubin,另一个意思是说 CUDA11.0 支持 Ampere 安培架构的显卡。

GPU 算力查看CUDA GPU | NVIDIA Developer

在这里就可以看到各种 GPU 对应的算力啦,可以看到3090显卡对应的算力是8.6,那么安装 CUDA 11.0 没错!

根据官网给的 Linux 命令行代码,复制粘贴等待安装好就 OK 了。

参考博文:

GeForce RTX 3090 with CUDA capability sm_86 is not compatible with the current PyTorch installation._Paramagnetism的博客-CSDN博客

nvidia显卡和CUDA版本关系 - 简书 (jianshu.com)

关于 Apex 的安装

跑论文里的代码遇到了 Apex 包,也是遇到了一些问题,简单记录总结一下。

首先该包下载安装方式比较特殊,需要去 GitHub 上下载。附网址:NVIDIA/apex: A PyTorch Extension: Tools for easy mixed precision and distributed training in Pytorch (github.com)

下载并安装:

  • 完整功能:
1
2
3
git clone https://github.com/NVIDIA/apex
cd apex
pip install -v --disable-pip-version-check --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./
  • Python 构建:
1
pip install -v --disable-pip-version-check --no-cache-dir ./

需要注意的是:在使用 Python 构建的时候,需要切换到有 torch 的 conda 环境!!!

不然就报错啦。


Linux安装PyTorch
https://excelius.xyz/linux安装pytorch/
作者
Ther
发布于
2021年10月1日
许可协议