【AI开发环境配置】Windows11下基于WSL2与Ubuntu22.04的PyTorch+GPU深度学习环境搭建指南

张开发
2026/4/18 7:19:06 15 分钟阅读

分享文章

【AI开发环境配置】Windows11下基于WSL2与Ubuntu22.04的PyTorch+GPU深度学习环境搭建指南
1. 为什么选择WSL2Ubuntu22.04做AI开发最近两年我帮团队搭建过几十次深度学习环境发现Windows11WSL2的组合越来越香。以前在Windows上搞AI开发总有种戴着镣铐跳舞的感觉现在WSL2的性能损耗已经降到5%以内还能直接调用NVIDIA显卡这简直就是Windows用户的福音。具体来说这个方案有三大优势开发效率翻倍既能用Windows的GUI工具比如VS Code又能享受Linux原生的开发体验资源利用率高相比虚拟机WSL2内存占用更少启动速度更快硬件兼容性好NVIDIA官方现在对WSL2的CUDA支持非常完善我去年给公司新来的实习生配环境时用这套方案半小时就搞定了PyTorchGPU环境比传统双系统方案省心太多。下面就把我踩坑总结的最优配置方案分享给大家。2. 环境准备从零配置WSL22.1 启用WSL2功能首先确认你的Windows11版本号不低于22000WinR输入winver查看。我遇到过不少同学卡在这一步主要是因为家庭版默认没开Hyper-V。用管理员身份运行PowerShell# 启用WSL功能 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart # 启用虚拟机平台 dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart重启后设置WSL2为默认版本wsl --set-default-version 2注意如果提示请求的操作需要提升记得右键PowerShell选择以管理员身份运行2.2 安装Ubuntu22.04 LTS微软商店搜索Ubuntu22.04 LTS安装。第一次启动时会让你设置用户名密码这里有个小技巧密码可以简单设置比如123因为后续sudo操作时还要频繁输入。安装完成后建议先执行基础更新sudo apt update sudo apt upgrade -y sudo apt install build-essential3. GPU环境配置关键步骤3.1 安装NVIDIA驱动这是最容易出问题的环节。经过多次测试我发现最稳的方案是在Windows端安装最新版NVIDIA Game Ready驱动在WSL中安装CUDA Toolkitwget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600 sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/3bf863cc.pub sudo add-apt-repository deb https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/ / sudo apt-get update sudo apt-get -y install cuda验证安装是否成功nvidia-smi如果看到显卡信息输出说明驱动装对了。我遇到过显卡识别不出的情况多半是因为Windows端的驱动版本太旧。3.2 配置CUDA环境变量在~/.bashrc末尾添加export PATH/usr/local/cuda-12.4/bin${PATH::${PATH}} export LD_LIBRARY_PATH/usr/local/cuda-12.4/lib64${LD_LIBRARY_PATH::${LD_LIBRARY_PATH}}然后执行source ~/.bashrc4. PyTorch环境搭建实战4.1 使用Miniconda管理环境相比AnacondaMiniconda更轻量特别适合WSL环境wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh安装完成后创建PyTorch专用环境conda create -n pytorch python3.10 conda activate pytorch4.2 安装PyTorch with CUDA访问PyTorch官网获取最新安装命令。以2.3.0版本为例conda install pytorch torchvision torchaudio pytorch-cuda12.1 -c pytorch -c nvidia验证GPU是否可用import torch print(torch.cuda.is_available()) # 应该输出True print(torch.rand(2,3).cuda()) # 测试张量能否转移到GPU5. 常见问题解决方案5.1 CUDA版本不兼容问题这是最常遇到的坑。比如报错CUDA driver version is insufficient for CUDA runtime version说明驱动版本和CUDA Toolkit版本不匹配。我的经验是在Windows端通过GeForce Experience更新驱动到最新版在WSL中运行nvidia-smi查看最高支持的CUDA版本安装对应版本的PyTorch5.2 WSL2内存泄漏问题默认情况下WSL2会占用大量内存。解决方法是在C:\Users\用户名\.wslconfig中添加[wsl2] memory8GB # 根据你电脑配置调整 swap4GB6. 性能优化技巧6.1 数据集存放位置不要把数据集放在WSL文件系统里我实测发现从/mnt/c/挂载的Windows目录读取速度更快# 在Windows端创建数据集目录 # 然后在WSL中通过/mnt/c/访问 ls /mnt/c/Users/yourname/datasets/6.2 启用CUDA Graph加速PyTorch 2.0支持CUDA Graph能显著减少kernel启动开销# 在训练循环前加上 torch.backends.cudnn.benchmark True7. 开发环境配置建议7.1 VS Code远程开发安装Remote - WSL扩展后直接在WSL终端输入code .就能用Windows端的VS Code编辑WSL中的代码智能提示和调试功能都能正常使用。7.2 Jupyter Notebook配置在conda环境中安装conda install jupyter启动时使用jupyter notebook --ip0.0.0.0 --no-browser然后在Windows浏览器访问localhost:8888即可。我习惯把常用notebook放在/mnt/c/下这样重装WSL也不会丢失。

更多文章