AI环境安装
更新: 12/21/2024 字数: 0 字 时长: 0 分钟
在深度学习领域,PyTorch 是一个非常流行的框架,而 CUDA 和 cuDNN 则是 NVIDIA 提供的用于加速深度学习计算的工具。本文将详细介绍如何在不同操作系统(Windows 和 Linux)上安装 PyTorch、CUDA、cuDNN 及 NVCC,并解决一些常见的安装问题。
安装 PyTorch
安装依赖
在安装 PyTorch 之前,确保系统已经安装了 Python 和 pip。可以通过以下命令安装:
Windows
下载并安装 Python。
确保 pip 已安装:
bashpython -m ensurepip --upgrade
Linux
sudo apt-get update
sudo apt-get install python3 python3-pip
使用 pip 安装 PyTorch
PyTorch 提供了多种安装方式,可以通过 pip 直接安装。首先,访问 PyTorch 官方网站,选择适合你的操作系统和 CUDA 版本的安装命令。例如,如果你使用的是 CUDA 11.3:
Windows
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113
Linux
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113
验证安装
安装完成后,可以通过以下 Python 代码验证 PyTorch 是否安装成功:
import torch
print(torch.__version__)
print(torch.cuda.is_available())
安装 CUDA
下载 CUDA Toolkit
访问 NVIDIA CUDA Toolkit 下载页面,选择适合你操作系统的版本并下载。
Windows
- 运行下载的安装程序。
- 按照提示完成安装。
Linux
下载对应的
.run
文件。运行安装程序:
bash
复制
shsudo sh cuda_<version>_linux.run
配置环境变量
Windows
- 右键点击“此电脑”,选择“属性”。
- 点击“高级系统设置”,然后点击“环境变量”。
- 在“系统变量”中,找到
Path
,点击“编辑”。 - 添加 CUDA 安装路径,例如
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\cuda版本\bin
。
Linux
在 ~/.bashrc
或 ~/.zshrc
中添加以下内容:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
验证安装
运行以下命令验证 CUDA 是否安装成功:
nvcc --version
安装 cuDNN
下载 cuDNN
访问 NVIDIA cuDNN 下载页面,选择适合你 CUDA 版本的 cuDNN 并下载。
Windows
- 解压下载的文件。
- 将解压后的文件复制到 CUDA 安装目录中,例如
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3
。
Linux
解压下载的文件:
bash
复制
shtar -xzvf cudnn-<version>-linux-x64-v<version>.tgz
将解压后的文件复制到 CUDA 安装目录中:
bash
复制
shsudo cp cuda/include/cudnn*.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
验证安装
运行以下命令验证 cuDNN 是否安装成功:
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
安装 NVCC
NVCC 是 CUDA 的编译器,通常在安装 CUDA Toolkit 时已经包含
。如果需要单独安装,可以参考以下步骤:
下载 NVCC
访问 NVIDIA CUDA Toolkit 下载页面,选择适合你操作系统的版本并下载。
安装 NVCC
Windows
- 运行下载的安装程序。
- 按照提示完成安装。
Linux
下载对应的
.run
文件。运行安装程序:
shsudo sh cuda_<version>_linux.run
验证安装
运行以下命令验证 NVCC 是否安装成功:
nvcc --version
常见问题及解决方法
nvidia-smi和pytorch的cuda关系
❓ 问:nvidia-smi显卡的cuda 版本是12.0,python虚拟环境中是cuda版本12.1,但是也可以用torch,不应该是低于nvidia-smi的显卡版本吗?这两个cuda有什么区别?
- 首先,确实,一般情况下,Torch(也就是PyTorch)会使用计算机上安装的CUDA版本。如果计算机上的nvidia-smi对显卡驱动版本为12.0,那么通常情况下CUDA版本也应当是12.0或者更低。否则可能会出现一些问题。然而,在一些情况下,你还可以在Python虚拟环境中使用一个与全局CUDA版本不同的CUDA。这主要是因为PyTorch支持使用
自带
的CUDA,这样就可以在Python虚拟环境中使用不同于全局CUDA版本的CUDA版本。 - 简单的说:python虚拟环境的cuda是
局部
的,nvidia-smi查询显示的cuda是全局
的,当python虚拟环境中的局部cuda不起作用的时候,全局cuda才起作用,只要虚拟环境中的PyTorch和CUDA版本相互兼容,且与显卡驱动兼容,就可以正常使用,不受全局CUDA版本的影响 - 全局CUDA版本更重要的是影响了其他可能会使用到CUDA的程序,而对于Python虚拟环境中的Pytorch来说,只要其自带的CUDA与显卡驱动兼容就可以了。只要Python虚拟环境中的CUDA库,显卡驱动,以及硬件之间是兼容的,那么PyTorch就可以正常运行。