ubuntu-20.04安装pytorch-1.12-GPU版本-以thinkpad-Quadro-P620为例
————————————————————— 前置条件 ————————————————————————
- 确保安装了cuda-toolkit-11.6,上博文已述。
————————————————————— 正文 —————————————————————————————
-
明确目的:要在最新的AI框架下测试和训练新的AI模型,首选了pytorch-gpu版本,因此需要找到对应版本的pytorch-gpu版本。
-
pytorch-gpu依赖cuda-toolkit版本和python版本,而python版本依赖于安装的anaconda版本(或采用直接python安装也可);
pytorch-gpu(1.12) -> cuda-toolkit(11.6) & python(3.9) -> anaconda -
因此,首先安装anaconda,在ubuntu下,anaconda叫miniconda,安装方法采用如下命令:
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
sh Miniconda3-latest-Linux-x86_64.sh
(注意:不能使用sudo或root权限安装conda,否则user模式无法使用conda!!!)
- 安装完成miniconda后,关掉当前的terminal,重开一个,进入查看conda的版本验证安装是否成功:
conda --version
conda info --envs
输出类似如下:
conda 4.12.0
# conda environments:
#
base * /home/xc/miniconda3
- 为conda更换国内镜像源:
在~/.condarc文件中添加清华大学或者中科大的镜像源。更换完成后重启终端,查看是否生效:
conda info
输出类似如下:
active environment : base
active env location : /home/xc/miniconda3
shell level : 1
user config file : /home/xc/.condarc
populated config files : /home/xc/.condarc
conda version : 4.12.0
conda-build version : not installed
python version : 3.9.12.final.0
virtual packages : __cuda=11.7=0
__linux=5.4.0=0
__glibc=2.31=0
__unix=0=0
__archspec=1=x86_64
base environment : /home/xc/miniconda3 (writable)
conda av data dir : /home/xc/miniconda3/etc/conda
conda av metadata url : None
channel URLs : http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/noarch
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/simpleitk/linux-64
http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/simpleitk/noarch
https://repo.anaconda.com/pkgs/main/linux-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/linux-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /home/xc/miniconda3/pkgs
/home/xc/.conda/pkgs
envs directories : /home/xc/miniconda3/envs
/home/xc/.conda/envs
platform : linux-64
user-agent : conda/4.12.0 requests/2.27.1 CPython/3.9.12 Linux/5.4.0-122-generic ubuntu/20.04.4 glibc/2.31
UID:GID : 1000:1000
netrc file : None
offline mode : False
- 继续安装pytorch-gpu-1.12,在进入conda的base环境后,使用如下命令:
conda install pytorch torchvision torchaudio cudatoolkit=11.6 -c pytorch -c conda-forge
(建议参考pytorch官网给出的操作方法:https://pytorch.org/get-started/locally/)
- 如果发现anaconda/miniconda换源后也无法下载安装pytorch-gpu版本,那么可以采用pip安装,方法参考pytorch官网,进入anaconda/miniconda的base或其他环境中,
检查python的版本是否>=3.8,然后可以使用pip命令安装pytorch-gpu,以及torchvision和torchaudio.
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116
觉得太慢了,也没办法换成阿里云的镜像源,只能老实等,这是因为pytorch-gpu版本的安装包wheel只由pytorch自家维护。
- 安装完成后,检查pytorch是否可以正常启用cuda:
import torch
torch.__version__
#'1.12.0+cu116'
torch.cuda.is_available()
#True
torch.cuda.device_count()
#1
x = torch.rand(3,3)
x_gpu = x.to(torch.device('cuda:0'))
y_gpu = x_gpu * 0.3
print(y_gpu)
#tensor([[0.0998, 0.2135, 0.2695],
# [0.1140, 0.2124, 0.2458],
# [0.2954, 0.1538, 0.1891]], device='cuda:0')