Ubuntu22.04安装PyTorch1.12.1 GPU版本全过程

 更新时间:2023年06月09日 14:19:09   作者:weixin_39450145  
这篇文章主要介绍了Ubuntu22.04安装PyTorch1.12.1 GPU版本全过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

最近又被装环境折磨,仅根据实际情况记录糟心经历。仅作记录。

网上很多pytorch GPU版本安装教程里一般步骤都说是:装显卡驱动、装cuda、装cudnn、最后安装pytorch GPU环境。

但也有教程说可以不单独安装cuda、cudnn,直接安装pytorch GPU环境。

于是,我打算在不安装cuda、cudnn的情况下(主要是嫌安装太麻烦),直接安装pytorch GPU环境(最后安装好是pytorch==1.12.1 torchvision==0.13.1 cudatoolkit=11.6)。

  • 机器情况:新机器,自带的有nvidia-smi显卡驱动。
  • 机器:Ubuntu22.04 + 英伟达显卡(GeForce RTX 4090)+ Anaconda3。
  • 目标:安装gpu版本的PyTorch1.12.1(torch1.12.1/cu116 + torchvision0.13.1/cu116)

一、电脑相关信息

1. 电脑显卡环境

  • 显卡:Nvidia GeForce RTX 4090
  • 电脑的显卡驱动版本:525.105.17,CUDA Version:12.0

(CUDA Version12.0表示此显卡驱动最高支持cu12.0。)

二、安装Pytorch1.12.1/cu116(GPU版本)

1. 准备:新建虚拟环境

1)首先安装Anaconda。(很简单,自行搜索)

2)其次在用Anaconda建一个虚拟环境。

conda create -n torch1-12-1 python=3.10
#(torch1-12-1 表示自己起的环境的名字。)

3)激活虚拟环境。(后续的操作都是在该虚拟环境下进行的。)

conda activate torch1-12-1

2. 方式一

用pip在线安装torch1.12.1+cu116、torchvision0.13.1+cu116:(在pytorch官网的历史版本里找安装命令)

1)在PyTorch官网历史版本链接( Previous PyTorch Versions | PyTorch)里面,找到使用pip安装pytorch1.12.1/cu116、torchvision==0.13.1+cu116的安装命令,进行在线安装。

安装命令:

# CUDA 11.6
pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu116

安装很快,很快就安装好了。测试torch的版本以及torch.cuda.is_available()都没有问题。

但是,在用这个pytorch环境运行代码时,总是报关于cuda的错(此代码在别的老机器上没有问题)。

最后感觉可能是因为pip命令安装的时候没有顺带安装cuda,再加上自己电脑自己没有安装cuda,所以感觉是环境没有安装好然后运行代码就一直报错。

于是选择用下面的方式二重新安装pytorch环境。

3. 方式二

用conda在线安装pytorch==1.12.1 torchvision==0.13.1 cudatoolkit=11.6:(在pytorch官网的历史版本里找安装命令)

最后选择用conda命令安装pytorch GPU版本。因为conda命令里面带的有cudatoolkit。

1)在PyTorch官网历史版本链接( Previous PyTorch Versions | PyTorch)里面,找到使用conda安装pytorch1.12.1/cu116、torchvision==0.13.1+cu116的安装命令,进行在线安装。

安装命令:

# CUDA 11.6
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.6 -c pytorch -c conda-forge

但是用conda在线安装pytorch环境的时候,下载包的时候老是断掉,下了一点就断了报错了。来回重新运行conda安装的命令很多次,一直没有下载安装成功。

最后配了一下conda的镜像源(照着这个链接里面配的anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror),不知道是因为这个原因还是突然网速变快了,突然一下子下载得贼快,几分钟就安装好了。真的是有点玄学。。。。

如下图:(下载安装得很快)

测试:

使用下面的命令测试,可以看到torch和torchvision对应的版本。

(base) ubuntu@ubuntu:~$ conda activate torch1-12-1
(torch1-12-1) ubuntu@ubuntu:~$ python
Python 3.10.11 (main, Apr 20 2023, 19:02:41) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> import torchvision
>>> torch.__version__
'1.12.1'
>>> torchvision.__version__
'0.13.1'
>>> torch.cuda.is_available()
True
>>> torch.version.cuda
'11.6'
>>> torch.backends.cudnn.version()
8302
>>> exit()
(torch1-12-1) ubuntu@ubuntu:~$ 

PyTorch1.12.1 GPU版本(pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.6)就安装好了~ 可以愉快使用了~

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python学习-List移除某个值remove和统计值次数count

    python学习-List移除某个值remove和统计值次数count

    这篇文章主要介绍了 python学习-List移除某个值remove和统计值次数count,文章基于python的相关内容展开详细介绍,需要的小伙伴可以参考一下
    2022-04-04
  • Python使用ffmpeg合成视频、音频的实现方法

    Python使用ffmpeg合成视频、音频的实现方法

    这篇文章主要介绍了Python使用ffmpeg合成视频、音频,通过本文的学习能帮助大家了解如何在python中调用ffmpeg模块,对此进行音视频合并,完成视频合成,需要的朋友可以参考下
    2022-04-04
  • python中os模块详解

    python中os模块详解

    os模块提供了多数操作系统的功能接口函数.当os模块被导入后,它会自适应于不同的操作系统平台,如posix或NT系统平台,os模块会根据不同的平台进行相应的操作.本节内容将对os模块提供的函数进行详细的解读.
    2016-10-10
  • CentOS 7下Python 2.7升级至Python3.6.1的实战教程

    CentOS 7下Python 2.7升级至Python3.6.1的实战教程

    Centos是目前最为流行的Linux服务器系统,其默认的Python 2.x,这篇文章主要给大家分享了关于在CentOS 7下Python 2.7升级至Python3.6.1的实战教程,文中将升级的步骤一步步的介绍的非常详细,对大家的理解和学习具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • Django配置celery(非djcelery)执行异步任务和定时任务

    Django配置celery(非djcelery)执行异步任务和定时任务

    这篇文章主要介绍了Django配置celery(非djcelery)执行异步任务和定时任务,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • python3的map与reduce实例详解

    python3的map与reduce实例详解

    这篇文章主要介绍了Python3中map()、reduce()、filter()的用法详解,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • Django学习笔记之为Model添加Action

    Django学习笔记之为Model添加Action

    这篇文章主要介绍了Django给admin添加Action,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • Python随机生成手机号、数字的方法详解

    Python随机生成手机号、数字的方法详解

    这篇文章主要介绍了Python随机生成手机号、数字的方法,结合完整实例形式分析了Python编程生成随机手机号与数字的实现方法及相关函数用法,需要的朋友可以参考下
    2017-07-07
  • python分析inkscape路径数据方案简单介绍

    python分析inkscape路径数据方案简单介绍

    这篇文章主要介绍了python分析inkscape路径数据方案简单介绍,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-09-09
  • Python常见MongoDB数据库操作实例总结

    Python常见MongoDB数据库操作实例总结

    这篇文章主要介绍了Python常见MongoDB数据库操作,结合实例形式详细总结了Python针对MongoDB数据库相关pymongo库安装以及MongoDB数据库的增删改查等相关操作技巧与注意事项,需要的朋友可以参考下
    2018-07-07

最新评论