Windows下PyTorch GPU环境搭建保姆级复盘:从Anaconda创建环境到验证CUDA 10.2可用性的完整记录
Windows深度学习环境搭建实战:PyTorch GPU版与CUDA 10.2的完美组合
当我在李沐老师的《动手学深度学习》视频中第一次看到GPU加速的神奇效果时,立刻被深深吸引了。作为一个刚入门深度学习的爱好者,我迫不及待想在自己的Windows电脑上搭建同样的环境。然而,从Anaconda环境创建到最终验证CUDA可用性,这个过程远比想象中复杂。本文将详细记录我如何一步步解决各种问题,最终成功搭建PyTorch GPU环境的全过程。
1. 环境准备:从零开始的深度学习工作站
1.1 Anaconda环境创建
深度学习项目最怕环境冲突,因此我决定为《动手学深度学习》创建一个独立的环境。打开Anaconda Prompt,我输入了以下命令:
conda create -n d2l_zh_gpu python=3.8 pip
这里有几个关键点需要注意:
-n d2l_zh_gpu:为环境命名,我沿用了课程推荐名称,但你可以自定义python=3.8:明确指定Python版本,避免后续兼容性问题pip:确保环境中包含pip工具,方便后续安装其他包
创建完成后,激活环境:
conda activate d2l_zh_gpu
成功激活后,命令行提示符前的(base)会变成你的环境名称(d2l_zh_gpu),这是确认环境切换成功的最直观标志。
1.2 CUDA版本确认
在安装PyTorch GPU版本前,必须确认系统CUDA版本。通过以下命令检查:
nvcc --version
我的输出显示CUDA版本为10.2,这决定了后续需要下载对应CUDA 10.2的PyTorch版本。如果你的CUDA版本不同,需要选择匹配的PyTorch版本。
注意:
nvidia-smi显示的CUDA版本是驱动支持的最高版本,而nvcc --version显示的是实际安装的CUDA工具包版本,两者可能不同但必须兼容。
2. PyTorch GPU版本安装:避开那些坑
2.1 寻找正确的wheel文件
PyTorch官方提供了所有历史版本的wheel文件,访问以下URL:
https://download.pytorch.org/whl/torch_stable.html
面对密密麻麻的文件列表,我花了些时间才理解命名规则:
| 文件名部分 | 含义 | 我的选择 |
|---|---|---|
| cuXXX | CUDA版本 | cu102 |
| cpXX | Python版本 | cp38 |
| win_amd64 | 系统架构 | win_amd64 |
最终我选择了这个文件:
cu102/torch-1.10.1+cu102-cp38-cp38-win_amd64.whl
2.2 下载与安装策略
最初我尝试通过清华镜像源直接安装:
pip install torch==1.10.1+cu102 -i https://pypi.tuna.tsinghua.edu.cn/simple
但下载速度极慢且经常中断。于是改为手动下载wheel文件后本地安装:
- 从PyTorch官网直接下载wheel文件
- 保存到本地目录(如Downloads)
- 使用pip安装本地文件:
pip install C:\Users\YourName\Downloads\torch-1.10.1+cu102-cp38-cp38-win_amd64.whl
这种方法不仅速度更快,还能避免网络问题导致的中断。
3. 环境验证:确保GPU加速真正生效
3.1 基础功能测试
安装完成后,我迫不及待地进行了测试:
import torch
print(torch.__version__) # 应显示1.10.1+cu102
print(torch.cuda.is_available()) # 期待True
当看到True的输出时,那种成就感难以言表!但别高兴太早,我还进行了更深入的测试:
# 检查CUDA设备数量
print(torch.cuda.device_count())
# 获取当前设备名称
print(torch.cuda.get_device_name(0))
# 创建一个张量并移动到GPU
x = torch.randn(3, 3).cuda()
print(x.device) # 应显示cuda:0
3.2 常见问题排查
如果torch.cuda.is_available()返回False,可能是以下原因:
- 安装了CPU版本:运行
conda list查看torch的build信息,如果是cpu而非cu102,说明安装错误 - CUDA驱动不匹配:确保
nvcc --version显示的版本与安装的PyTorch版本兼容 - 环境变量问题:检查CUDA相关路径是否已正确添加到系统环境变量中
4. 效率优化与后续配置
4.1 加速包安装
为了获得完整的深度学习开发环境,还需要安装几个关键包:
pip install torchvision==0.11.2+cu102 torchaudio==0.10.1+cu102 -f https://download.pytorch.org/whl/torch_stable.html
这些版本号与PyTorch 1.10.1+cu102保持兼容。安装时同样可以使用本地下载的wheel文件来加速。
4.2 Jupyter Notebook集成
为了方便实验,我将环境添加到Jupyter Notebook:
conda install ipykernel
python -m ipykernel install --user --name=d2l_zh_gpu
现在,我可以在Jupyter中选择d2l_zh_gpu内核,直接在浏览器中运行GPU加速的代码了。
4.3 性能基准测试
为了量化GPU带来的提升,我运行了一个简单的基准测试:
import torch
import time
device = 'cuda' if torch.cuda.is_available() else 'cpu'
size = 10000
# CPU测试
start = time.time()
a = torch.randn(size, size)
b = torch.randn(size, size)
c = a @ b
print(f'CPU time: {time.time()-start:.2f}s')
# GPU测试
start = time.time()
a = a.to(device)
b = b.to(device)
c = a @ b
print(f'GPU time: {time.time()-start:.2f}s')
在我的机器上,GPU版本比CPU快了近20倍,这充分证明了环境配置的价值。
更多推荐


所有评论(0)