当前位置: 首页 > news >正文

告别双系统!保姆级教程:在Windows 11上用WSL2 + PyCharm Professional 2023.2配置CUDA 12.1深度学习环境

Windows 11深度学习环境终极配置:WSL2 + PyCharm + CUDA 12.1实战指南

在Windows 11上搭建高效的深度学习开发环境,不再需要双系统或虚拟机。本文将带你一步步配置完整的GPU加速开发环境,充分利用WSL2和PyCharm Professional 2023.2的最新特性。

1. Windows 11环境准备与优化

Windows 11对WSL2的支持比Win10更加完善,特别是在GPU加速和文件系统性能方面。首先确保你的系统满足以下要求:

  • Windows 11 22H2或更高版本
  • 支持虚拟化的CPU(Intel VT-x或AMD-V)
  • NVIDIA显卡(RTX系列推荐)和最新驱动

启用必要功能

  1. 以管理员身份打开PowerShell,执行:
wsl --install
  1. 这个命令会自动启用WSL和虚拟机平台功能,无需手动操作

小技巧:检查WSL版本是否为2:

wsl --list --verbose

注意:如果之前安装过WSL1,可以使用wsl --set-version Ubuntu 2进行转换

2. Ubuntu WSL2环境配置

微软商店安装Ubuntu 22.04 LTS后,进行以下优化配置:

系统更新与基础工具安装

sudo apt update && sudo apt upgrade -y sudo apt install -y build-essential git curl wget

配置国内镜像源

  1. 备份原有源列表
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  1. 替换为阿里云源
sudo sed -i 's|http://.*archive.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list sudo sed -i 's|http://.*security.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list

安装Windows Terminal(推荐):

  • 微软商店搜索安装"Windows Terminal"
  • 配置默认启动Ubuntu WSL2

3. CUDA 12.1与cuDNN安装

Windows 11的WSL2现在支持直接调用宿主机的NVIDIA GPU,无需额外驱动:

安装CUDA Toolkit

wget 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-12-1

配置环境变量

echo 'export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}}' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}' >> ~/.bashrc source ~/.bashrc

验证安装

nvcc --version nvidia-smi

cuDNN安装: 从NVIDIA官网下载对应版本的cuDNN,然后:

sudo dpkg -i libcudnn8_8.9.4.25-1+cuda12.1_amd64.deb sudo dpkg -i libcudnn8-dev_8.9.4.25-1+cuda12.1_amd64.deb

4. Conda环境与PyTorch配置

安装Miniconda

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh

配置conda镜像

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --set show_channel_urls yes

创建深度学习环境

conda create -n dl python=3.10 conda activate dl conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

验证PyTorch GPU支持

import torch print(torch.cuda.is_available()) # 应该返回True print(torch.cuda.get_device_name(0)) # 显示你的GPU型号

5. PyCharm Professional配置

PyCharm 2023.2对WSL2的支持更加完善:

  1. 安装PyCharm Professional版
  2. 打开设置 → 构建、执行、部署 → 工具 → WSL
  3. 添加你的Ubuntu WSL2分发版
  4. 创建新项目时选择"WSL"作为解释器位置
  5. 选择之前创建的conda环境(通常位于~/miniconda3/envs/dl/bin/python

实用技巧

  • 使用"连接到WSL"功能可以直接在WSL环境中运行和调试代码
  • 配置文件映射确保Windows和WSL路径正确转换
  • 启用"同步WSL发行版中的文件"选项保持文件一致性

6. 性能优化与问题排查

IO性能优化

sudo nano /etc/wsl.conf

添加以下内容:

[automount] options = "metadata,umask=22,fmask=11"

常见问题解决方案

问题现象解决方案
CUDA不可用检查NVIDIA驱动版本,确保≥515
内存不足.wslconfig中配置内存限制
文件权限错误使用chmod修正权限

GPU内存监控

watch -n 1 nvidia-smi

在实际项目中,这种配置方式比传统双系统方案节省了大量上下文切换时间,同时保持了接近原生Linux的性能。特别是在处理大型数据集时,WSL2的直接文件访问优势明显。

http://www.gsyq.cn/news/1483639.html

相关文章:

  • 动态指纹混淆:无痕绕过现代WAF的渗透测试法
  • 社区养老服务系统毕设源码
  • 手把手教你用滑模观测器(SMO)搞定PMSM无感FOC:从α-β方程到转子位置估算
  • 超越CNN?用Swin Transformer在自定义数据集上轻松实现95%+准确率
  • 别再手动一个个点了!用MATLAB的dir函数批量处理遥感TIF数据(附完整代码)
  • 别再手动修音了!用Melodyne Studio 5.3一键分析人声,Adobe Audition内录素材导入全攻略
  • 从零到自动化:手把手教你用Python脚本调用Redfish API管理服务器(附Postman转Python代码技巧)
  • 深度学习安全:权重扰动后门攻击与防御实战
  • 2026年Java面试核心预测与突破
  • 用联盛德HLK-W806和ST7567 LCD自制一个简易天气站:从驱动到UI显示的完整项目
  • 新手画板必看:我的PCB因为这几个接地错误,ESD测试直接挂了(附整改前后对比图)
  • 电力仿真新手必看:用PSCAD搭建第一个RLC电路模型(附详细参数设置避坑点)
  • 跑遍南山福田对比6家|RERA激光封边,碾压传统EVA黑线脱胶 - 产品测评官
  • Gemini3.0绑卡教程,全程无成本、无实体卡,快速完成
  • 告别FlexTimer!S32K3的eMIOS模块到底强在哪?保姆级配置流程分享
  • MixIO vs Blynk vs MQTT:为你的Arduino物联网项目选个轻量级平台
  • 告别枯燥理论:用NS-3.35手把手搭建你的第一个点对点网络仿真(附完整代码解析)
  • 告别纯理论:手把手教你用Pluto SDR搭建第一个无线模拟通信链路(MATLAB 2023版)
  • 性价比高的碳纤维登山杖推荐,欣汇复合材料的产品如何 - myqiye
  • Wasserstein距离在强化学习策略评估中的应用与优化
  • 别再让CRLF和LF打架了!一份给Java项目的跨平台Git协作避坑指南
  • 不只是加TVS管:搞定8KV空气放电,我的PCB布局与屏蔽实战心得
  • 哪款AI视频去重最靠谱?5款主流工具实测对比评测
  • 深圳5家定制探店测评|RERA源木匠心,自有工厂品控排第一 - 产品测评官
  • 【经验】CSDN-AI数字营销试用测评3
  • 实战避坑:从零到一开发你的第一个PDMS PML图形界面(Form)插件
  • 终极Boot Camp驱动解决方案:Brigadier如何让Mac用户告别驱动烦恼
  • 模板驱动文档自动化:告别重复劳动的确定性交付方案
  • 音频处理实战:用Python快速设计Butterworth滤波器并可视化幅频曲线(附Jupyter Notebook)
  • 2026年新疆闪灵GEO搜索推广口碑如何? - mypinpai