相关章节
《Pytorch深度学习框架实战教程09:模型的保存和加载》
《Pytorch深度学习框架实战教程01:深度学习框架简介》
本文详细介绍了PyTorch CPU/GPU双版本的完整安装流程,从环境准备到部署验证,助你快速搭建高效深度学习开发环境。
一、环境准备:硬件与软件基础
1.1 硬件要求
-
CPU版本:至少4核处理器,8GB内存(推荐16GB+)
-
GPU版本:NVIDIA显卡(GTX 1060起步,推荐RTX 3060+),显存6GB+
-
存储空间:至少20GB可用空间(数据集和模型占用)
1.2 软件要求
-
操作系统:Windows 10/11,Ubuntu 18.04+,macOS 10.15+
-
Python版本:3.8-3.11(PyTorch官方推荐)
-
包管理工具:pip或Anaconda/Miniconda
使用
nvidia-smi
命令检查GPU状态(仅限NVIDIA显卡):+-----------------------------------------------------------------------------+
| NVIDIA-SMI 535.86.05 Driver Version: 535.86.05 CUDA Version: 12.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... On | 00000000:01:00.0 On | N/A |
| 30%45C P8 15W / 180W | 682MiB / 8192MiB | 1% Default |
二、安装Python环境
2.1 安装Miniconda(推荐)
# Linux/macOS
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
# Windows
下载Miniconda3-latest-Windows-x86_64.exe并运行
2.2 创建虚拟环境
conda create -n pytorch_env python=3.10
conda activate pytorch_env
三、CPU版本安装(通用方案)
3.1 使用pip安装
pip install torch torchvision torchaudio
3.2 使用conda安装
conda install pytorch torchvision torchaudio cpuonly -c pytorch
四、GPU版本安装(NVIDIA专属)
4.1 驱动与CUDA安装
-
安装NVIDIA驱动:
-
Ubuntu:
sudo apt install nvidia-driver-535
-
Windows:下载GeForce Experience自动更新
-
-
安装CUDA Toolkit:
# CUDA 12.1安装命令 wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run sudo sh cuda_12.1.1_530.30.02_linux.run
-
配置环境变量:
# 添加到~/.bashrc export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-12.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
4.2 PyTorch GPU版安装
访问PyTorch官网获取最新命令:
# CUDA 12.1示例 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
4.3 cuDNN安装(可选加速)
-
下载对应CUDA版本的cuDNN
-
解压并复制文件:
tar -xzvf cudnn-linux-x86_64-8.9.4.25_cuda12-archive.tar.xz sudo cp cuda/include/cudnn*.h /usr/local/cuda/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
五、安装验证与测试
5.1 基础功能测试
import torch
print(f"PyTorch版本: {torch.__version__}")
print(f"CUDA可用: {torch.cuda.is_available()}")
print(f"GPU数量: {torch.cuda.device_count()}")
print(f"当前GPU: {torch.cuda.current_device()}")
print(f"设备名称: {torch.cuda.get_device_name(0)}")
5.2 性能基准测试
# 矩阵乘法性能测试
device = 'cuda' if torch.cuda.is_available() else 'cpu'
x = torch.randn(10000, 10000).to(device)
y = torch.randn(10000, 10000).to(device)
%timeit z = torch.matmul(x, y) # 使用%timeit测量执行时间
# 典型结果对比:
# CPU (i7-12700H): 2.3 s ± 45.6 ms per loop
# GPU (RTX 3060): 125 ms ± 1.24 ms per loop
六、Docker部署方案(生产环境推荐)
6.1 安装Docker
# Ubuntu sudo apt install docker.io sudo systemctl enable --now docker # Windows 下载Docker Desktop并安装
6.2 拉取PyTorch镜像
# 官方镜像(含CUDA支持) docker pull pytorch/pytorch:2.1.0-cuda12.1-cudnn8-runtime # 运行容器 docker run -it --gpus all pytorch/pytorch:2.1.0-cuda12.1-cudnn8-runtime
七、常见问题解决方案
-
CUDA不可用问题:
-
检查驱动版本:
nvidia-smi
-
验证CUDA安装:
nvcc --version
-
确保PyTorch CUDA版本匹配
-
-
内存不足错误:
# 减少批次大小 dataloader = DataLoader(dataset, batch_size=16, shuffle=True) # 使用混合精度训练 scaler = torch.cuda.amp.GradScaler()
-
多GPU配置:
# 数据并行 model = nn.DataParallel(model) # 分布式训练 torch.distributed.init_process_group(backend='nccl')
八、环境优化建议
-
性能调优:
# 设置OpenMP线程数 export OMP_NUM_THREADS=8
-
虚拟环境管理:
# 导出环境配置 conda env export > environment.yml # 恢复环境 conda env create -f environment.yml
IDE配置建议:
-
VS Code安装Python和Pylance扩展
-
PyCharm专业版启用CUDA调试支持
-
结论:选择最佳方案
应用场景 | 推荐方案 | 优势 |
---|---|---|
学习/轻量级任务 | CPU版本 | 无需GPU,资源消耗低 |
模型训练 | GPU版本+conda环境 | 最大化利用硬件加速 |
团队协作 | Docker容器化部署 | 环境一致性高 |
生产部署 | PyTorch TorchServe | 专业模型服务框架 |