每次在服务器上配置环境都需要考虑 Pytorch 版本 / CUDA 版本 / GPU 驱动版本等诸多因素,因为 ⌈ \lceil ⌈Pytorch 只能下载指定 CUDA 版本的库 ⌋ \rfloor ⌋、 ⌈ \lceil ⌈GPU 只能使用特定版本的驱动 ⌋ \rfloor ⌋、 ⌈ \lceil ⌈GPU 有最高支持的 CUDA 版本限制 ⌋ \rfloor ⌋ 等等,本文在此梳理相关要素。
项目开发之前,需要检查计算机的硬 / 软件环境,包括 GPU、驱动、CUDA、Python、Pytorch、Anaconda 等。
GPU(Graphics Processing Unit,图形处理单元)是一种专门设计用于处理图形和图像数据的处理器,它是计算机中用于实时渲染图形、处理图像、执行计算密集型任务的关键组件之一。GPU 最初是为了图形渲染而设计的,但是随着技术的发展,它们的功能被拓展到了其他领域,如科学计算、人工智能和深度学习等。GPU 的并行处理能力使得它们在执行大规模并行计算任务时表现出色。
在所有工作开始之前,先检查计算机的 GPU 情况:
wmic path win32_videocontroller get caption
命令查看显卡信息;nvidia-smi
命令查看显卡的标号和型号:GPU 驱动(Graphics Processing Unit Driver,图形处理单元驱动程序)是负责在操作系统和图形处理单元之间进行通信和协调的软件,主要功能包括:硬件控制、性能优化、兼容性支持、错误修复、功能扩展等。GPU 驱动程序通常由显卡制造商提供,例如 NVIDIA、AMD、Intel 等,用户可以从它们的官方网站或通过操作系统的自动更新功能获取最新的驱动程序。
GPU 驱动版本可以直接使用 nvidia-smi
命令查看:
想要知道合适的 GPU 驱动版本,可以访问 http://www.nvidia.com/Download/index.aspx 查询:
CUDA(Compute Unified Device Architecture,计算统一设备架构)是由 NVIDIA 开发的并行计算平台和编程模型,旨在利用 NVIDIA GPU 的并行计算能力进行通用目的的计算。CUDA 使开发人员能够利用 GPU 的大量并行处理核心来加速计算任务,从而在科学计算、深度学习、机器学习、图形处理等领域获得更高的性能和效率。
CUDA 包括以下主要组件:
CUDA 版本可以直接使用 nvcc --version
命令查看:
CUDA 版本会受到 GPU 限制,使用 nvidia-smi
命令可以查看 GPU 最高支持的 CUDA 版本号:
需要注意的是,CUDA 不是独立安装的,而是在安装 Pytorch 时一起安装的。
现在一般使用的都是 Python 3.x,可以使用命令 python3 --version
或 python --version
检查版本:
Pytorch 分为 CPU 版本和 GPU 版本(+cuxxx
),只有带英伟达显卡的电脑才能安装 GPU 版本。可以使用 python -c "import torch; print(torch.__version__)"
或 python3 -c "import torch; print(torch.__version__)"
指令检查 Pytorch 版本:
Anaconda 是一个开源的 Python 和 R 语言的发行版,用于科学计算、数据分析、机器学习和大数据处理等领域。它包含了许多常用的数据科学工具和库,并提供了一个方便的包管理系统,使得用户可以轻松地安装、管理和更新各种数据科学工具和库。
Anaconda 包括以下主要组件:
正因为 Anaconda 集成了 Python、Jupyter Notebook、NumPy、Pandas、Matplotlib 等诸多数据科学工具和库,并且提供了简单易用的环境管理工具,可以轻松地创建、管理和切换不同的 Python 虚拟环境,Anaconda 在项目开发中被广泛使用。安装好 Anaconda 的计算机会自带一个基础环境,后续项目开发时每个项目需要的安装包不同,为了避免冲突,可以为每个项目配置一个虚拟环境,以 避免不同项目之间环境依赖的冲突。
服务器上一般都装有 Anaconda,可以使用 conda --version
命令检查版本:
本地 Windows 上安装 Anaconda 教程参考 2023最新pytorch安装(超详细版)。
虽然 conda 和 pip 都可以安装软件包,但有一些差别:
- 安装位置:
- 通过 pip 安装的 Python 软件包通常会被安装到 Python 解释器的
site-packages
目录下:Linux 中一般在/usr/local/lib/python3.x/site-packages/
下,Windows 中一般在C:\Python3.x\Lib\site-packages\
下;- 通过 conda 安装的 Python 软件包通常会被安装到 conda 环境下特定目录:默认环境一般在
/anaconda3/lib/python3.x/site-packages/
,conda 环境一般在/path/to/your/env/lib/python3.x/site-packages/
;- 软件包来源:
- pip 是 Python 的默认包管理工具,主要用于从 Python Package Index (PyPI) 安装和管理 Python 软件包;
- conda 是 Anaconda 发行版自带的包管理工具,它能够管理包括 Python 软件包在内的任何软件包,并提供了自己的软件仓库;
总的来说,pip 适用于管理 Python 包,而 conda 则更适用于管理整个软件环境。因此大多数情况下,项目开发会 使用 conda 创建虚拟环境,然后 使用 pip 安装软件包。
安装 Pytorch 前,需要使用 pip uninstall torch torchvision
命令卸载之前的版本:
Pytorch 的安装需要考虑 GPU 支持的 CUDA 版本,比如上文 GPU 信息提示最高支持 12.2 版本 的 CUDA,就可以安装小于等于 12.2 版本的 CUDA 对应的 Pytorch。去 Pytorch 官网 INSTALL PYTORCH
下查询满足条件的 Pytorch 版本,如果想要安装旧版本的 Pytorch,点击 Previous versions of PyTorch
:
搜索想要安装的 Pytorch 版本即可,以 1.13.1 为例:
Conda 下的是使用 conda 安装,Wheel 下的是使用 pip 安装;
如果网络问题下载缓慢,可以使用国内镜像:
镜像名 | 镜像地址 – pytorch, torchvision, torchaudio |
---|---|
清华镜像 | https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/ |
北京外国语大学镜像 | https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/win-64/ |
阿里巴巴镜像 | http://mirrors.aliyun.com/anaconda/cloud/pytorch/win-64/ |
南京大学镜像 | https://mirror.nju.edu.cn/pub/anaconda/cloud/pytorch/win-64/ |