PyTorch与PyTorch Geometric的安装过程

 更新时间:2023年04月06日 11:11:05   作者:子非闕  
这篇文章主要介绍了PyTorch与PyTorch Geometric的安装,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

PyTorch与PyTorch Geometric的安装

GPU与CUDA,Python,PyTorch的匹配

1. 查看Linux系统中GPU的基础信息/NVIDIA Driver Version

nvidia-smi

GPU的基础信息

nvidia-smi是nvidia 的系统管理界面 ,其中smi是System management interface的缩写,它可以收集各种级别的信息,查看显存使用情况。此外, 可以启用和禁用 GPU 配置选项 (如 ECC 内存功能)。

系统的Nvidia Driver Version决定着系统最高可以支持什么版本的cuda和cudatoolkit,Nvidia Driver是向下兼容的,详情如下(见Table 3. CUDA Toolkit and Corresponding Driver Versions):

2. 查看当前CUDA版本:

cat  /usr/local/cuda/version.txt

CUDA Version

我自己的环境最高可支持10.1版本的cuda和cudatoolkit,当前是10.0,版本向下兼容,并无什么问题。

3. CUDA Toolkit匹配PyTorch

CUDA Toolkit 和PyTorch的对应关系(见官网

在这里插入图片描述

! 注意事项:服务器本身的CUDA版本与虚拟环境中安装的cudatoolkit包没有太大关系,一般安装pytorch时需要考虑的cuda版本指的应该是虚拟环境中安装的cudatoolkit包的版本

由于我需要用到v1.6.0的Pytorch,因此自己在虚拟环境里安装v10.1的CUDA Toolkit,系统GPU可接受最高版本v10.1。
torch与torchvision对应关系如下(详情见PyTorch / Vision):

torch与torchvision对应关系

因此,我需要安装的如下:
CUDA Toolkit == 10.1
Python == 3.7
PyTorch == 1.6

安装PyTorch

pip install torch==1.6.0+cu101 torchvision==0.7.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html

安装完成后可通过以下命令检查torch版本及对应的CUDA版本:

python -c "import torch; print(torch.__version__)"
python -c "import torch; print(torch.version.cuda)"

再通过以下命令查看GPU是否可用:

python

>>> import torch
>>> torch.cuda.is_available() 	# GPU是否可用
>>> torch.cuda.device_count()	# GPU数量
>>> torch.cuda.current_device()	# 当前GPU
>>> exit()

注意,GPU devices从0开始编号。

安装PyTorch Geometric

1. 快速安装

根据官网,如果PyTorch版本≥1.8.0,可以快速下载:

2. 自定义安装

自定义下载需要根据当前的PyTorch版本和CUDA版本下载相关的依赖,下载命令如下:

pip install torch-scatter -f https://pytorch-geometric.com/whl/torch-${TORCH}+${CUDA}.html
pip install torch-sparse -f https://pytorch-geometric.com/whl/torch-${TORCH}+${CUDA}.html
pip install torch-geometric

其中, ${TORCH}替换为当前环境下的PyTorch版本,目前支持1.4.0、1.5.0、1.6.0、1.7.0、1.7.1、1.8.0、1.8.1、和1.9.0; ${CUDA}替换为指定的CUDA版本,目前支持cpu、cu92、cu101、cu102、cu110和cu111。

例如对于PyTorch 1.6.0和CUDA 10.1:

pip install torch-scatter -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html
pip install torch-sparse -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html
pip install torch-geometric

3. 版本依赖

使用自定义安装时,依然可能会出现安装失败的问题,因为pytorch_geometric几个相关库之间有比较强的依赖关系,建议是在自定义安装的基础上指定对应库的版本,例如对于pytorch1.6.0和cuda10.1:

pip install torch-scatter==2.0.5 -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html
pip install torch-cluster==1.5.8 -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html
pip install torch-sparse==0.6.7 -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html
pip install torch-spline-conv==1.2.0 -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html
pip install torch-geometric==1.6.1 -f https://pytorch-geometric.com/whl/torch-1.6.0+cu101.html

到此这篇关于PyTorch与PyTorch Geometric的安装的文章就介绍到这了,更多相关PyTorch Geometric安装内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python requests模块用法详解

    Python requests模块用法详解

    这篇文章主要介绍了Python requests模块用法,Python内置了requests模块,该模块主要用来发送HTTP请求,requests模块比urllib模块更简洁
    2023-02-02
  • Jetson NX 配置 pytorch的问题及解决方法

    Jetson NX 配置 pytorch的问题及解决方法

    这篇文章主要介绍了Jetson NX 配置 pytorch的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • python中的httpx异步请求

    python中的httpx异步请求

    这篇文章主要介绍了python中的httpx异步请求方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • python3 打开外部程序及关闭的示例

    python3 打开外部程序及关闭的示例

    今天小编就为大家分享一篇python3 打开外部程序及关闭的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • 使用openCV去除文字中乱入的线条实例

    使用openCV去除文字中乱入的线条实例

    这篇文章主要介绍了使用openCV去除文字中乱入的线条实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python3 sort和sorted用法+cmp_to_key()函数详解

    Python3 sort和sorted用法+cmp_to_key()函数详解

    这篇文章主要介绍了Python3 sort和sorted用法+cmp_to_key()函数详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Python多进程的使用详情

    Python多进程的使用详情

    本篇重点介绍Python多进程的使用,主要介绍其的一些方法及进程的创建等,想进一步了解的小伙伴请跟小编一起进入下文吧
    2021-09-09
  • Python中关于 *args与**args的用法及说明

    Python中关于 *args与**args的用法及说明

    这篇文章主要介绍了Python中关于 *args与**args的用法及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • 在Python中marshal对象序列化的相关知识

    在Python中marshal对象序列化的相关知识

    这篇文章主要介绍了在Python中marshal对象序列化的相关知识,是Python进阶学习中序列化相关的知识,需要的朋友可以参考下
    2015-07-07
  • python运算符+条件结构+循环结构

    python运算符+条件结构+循环结构

    这篇文章主要介绍了python运算符、条件结构、循环结构;算术运算符、赋值运算符、逻辑运算符等一些相关内容,需要的小伙伴可以参考一下,希望对你的学习有所帮助
    2022-03-03

最新评论