深度学习 | 还在用双系统?一文教你PyCharm+WSL2+CUDA搭建开发环境
文章目录
原创声明
本文为 HinGwenWoong 原创,如果这篇文章对您有帮助,欢迎转载,转载请阅读文末的【授权须知】,感谢您对 HinGwenWoong 文章的认可!
前言
我们在开发深度学习项目的时候,经常出现对 Linux 友好但是对 Windows 不是完全支持的情况,但是装双系统之后,文件不能共享,这就比较烦恼;如果使用虚拟机,读取不了显卡也比较头痛。
值得兴奋的是,Win10 现在出了 WSL,就是 Windows 下的子系统,将 Linux 生态也并进来了,使用 WSL 可以快速搭建一个 Linux 子系统并且完美运行 cuda,一个字:爽!
下面就一起来搭建吧!
我是 HinGwenWoong,一个有着清晰目标不停奋斗的程序猿,热爱技术,喜欢分享,码字不易,如果帮到您,请帮我在屏幕下方点赞 👍 ,您的点赞可以让技术传播得更远更广,谢谢!
一、WSL 2 安装 Ubuntu
-
启用适用于
Linux的Windows子系统,以管理员身份打开PowerShell,然后输入以下命令:dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart -
启用虚拟机功能
安装WSL 2之前,必须启用【虚拟机平台】的功能,因为计算机需要虚拟化功能才能使用此功能。
以管理员身份打开PowerShell并运行:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart执行之后,重新启动计算机,以完成
WSL的安装并更新到WSL 2。 -
将
WSL 2设置为默认版本:
打开PowerShell,然后运行以下命令,将WSL 2设置为默认版本:wsl --set-default-version 2 -
使用
Windows 商店安装Ubuntu:商店传送门
在上方搜索:Ubuntu,会出现多个版本,选择你需要的版本,这里选择18.04
-
安装完成后,可以在开始菜单栏看到
Ubuntu了
-
第一次需要手动启动,初始化用户名、密码那些
-
使用命令检查下内核版本号,推荐
5.10.16.3以及之后的版本uname -r
-
如果版本太低,使用命令进行升级
wsl.exe --update -
更换 Ubuntu 的镜像源为阿里,打开
/etc/apt/sources.list,在开头加上:deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse -
终端输入
sudo apt-get update更新镜像源
二、安装终端软件(可选,但推荐)
强烈建议安装 Windows Terminal ,超级好用,Windows 商店传送门

使用这个界面就舒服很多了,而且可以切换不同的子系统
三、安装 Nvidia-WSL 驱动
-
去到官方下载地址下载安装包:

-
选择对应的显卡系列下载安装包

-
执行下载好的
.exe文件就可以了 -
重启电脑
四、Ubuntu 安装 CUDA-WSL 专属驱动
-
去到官方下载地址获取安装命令:

-
在 Ubuntu 子系统中,跟着给出的命令,一套带走:
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 wget https://developer.download.nvidia.com/compute/cuda/11.5.1/local_installers/cuda-repo-wsl-ubuntu-11-5-local_11.5.1-1_amd64.deb sudo dpkg -i cuda-repo-wsl-ubuntu-11-5-local_11.5.1-1_amd64.deb sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-5-local/7fa2af80.pub sudo apt-get update sudo apt-get -y install cuda
-
将 cuda 加入环境变量
vim ~/.bashrc加入以下内容:(前提是 CUDA 安装在默认位置)
# cuda export CUDA_HOME=/usr/local/cuda export PATH=${CUDA_HOME}/bin:$PATH export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${CUDA_HOME}/lib64修改之后,保存退出,更新下就行
source ~/.bashrc -
使用
nvcc命令可以看到 CUDA 信息nvcc -V
-
使用官方的例子进行测试
cd ${CUDA_HOME}/samples/4_Finance/BlackScholes ./BlackScholes
可能出现的错误:
-
安装完之后,使用官方例子出现错误
CUDA error at ../../common/inc/helper_cuda.h:779 code=35(cudaErrorInsufficientDriver) "cudaGetDeviceCount(&device_count)" -
升级系统!!!! 我升级到
21H2就可以了 -
升级完之后去执行

-
成功!
五、安装 miniconda 并测试
-
使用清华镜像站进行下载,命令:
wget -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh -
安装开始填写
yes
-
安装路径,建议是默认

-
安装的最后会询问是否初始化,填写
yes
-
完成!

-
进行 conda 初始化
conda init -
检查 conda 的环境变量:
vim ~/.bashrc看到以下信息即可视为成功:
# >>> conda initialize >>> # !! Contents within this block are managed by 'conda init' !! __conda_setup="$(<conda 安装路径>/bin/conda' 'shell.bash' 'hook' 2> /dev/null)" if [ $? -eq 0 ]; then eval "$__conda_setup" else if [ -f "<conda 安装路径>/etc/profile.d/conda.sh" ]; then . "<conda 安装路径>/etc/profile.d/conda.sh" else export PATH="<conda 安装路径>/bin:$PATH" fi fi unset __conda_setup # <<< conda initialize <<< -
切换 Conda 镜像源:
可以参考我的一篇文章:Conda 下载慢? 一招帮你解决! -
使用
pytorch测试能否正常调用CUDA,如果显示为TRUE则为成功!
六、使用 Pycharm 连接并测试
- 在 Python 解释器加入 WSL

- 在下方
Python 控制台测试,显示True即为成功!
至此,已全部完成,下面是配置 cudnn 和 torch2trt 的环境,如果不需要则跳过
附录
附录一、其他版本的 CUDA 和 cudnn 安装及其环境变量
其他版本的 CUDA 和 cudnn 的安装
- 这里使用 conda 安装
conda install cudatoolkit=XX.XX.XX conda install cudnn
cudnn 环境变量配置
- 在导入
TensorRT的时候出现一直找不到:ImportError: libcudnn.so.8: cannot open shared object file: No such file or directory
- 使用命令
sudo find / -name libcudnn.so.8寻找 cudnn 的安装路径:
- 在
~/.bashrc中加入:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/hingwenwoong/miniconda3/pkgs/cudnn-8.2.1-cuda11.3_0/lib
- 更新下
source ~/.bashrc,再次测试:
- 成功!
附录二、安装 torch2trt
-
安装显示缺少头文件

-
编辑
setup.py,把setup.py里面的trt_inc_dir和trt_lib_dir分别改为你的trt的include和lib目录,就可以 `sudo 安装了:
总结
以上就是使用 PyCharm+WSL2+CUDA搭建Windows开发环境 的方法了,感谢您看到这里,希望能够帮助你快速搭建 windows 开发环境
参考文章:
- [1] Windows WSL 官方教程
- [2] linux下anoconda 安装tensorflow(解决import出错问题:libcudnn.so.6:cannot open sharedobject file: No such file…
- Pycharm | 一文掌握 Pycharm 中的 Git 操作 ( 超详细)
- 深度学习实战 | 智慧工地安全帽和危险区域检测系统(代码已开源!)
- 深度学习OCR | 文字识别网络 CRNN 论文翻译
- 深度学习 | TensorFlow 2.x 和 1.x 限制显存(超详细)
授权须知
- 原创文章在推送一天后才可进行转载
- 转载文章,禁止声明原创
- 不允许直接二次转载,转载请根据原文链接联系作者
- 若无需改版,在文首清楚标注作者及来源/原文链接,并删除【原创声明】,即可直接转载。
但对于未注明转载来源/原文链接的文章,我将保留追述的权利。作者:HinGwenWoong
一个有着清晰目标不停奋斗的程序猿,热爱技术,喜欢分享,共同进步!
CSDN: HinGwenWoong
原文链接:深度学习 | 还在用双系统?一文教你PyCharm+WSL2+CUDA搭建开发环境 - 若需要修改文章的排版,请根据原文链接联系作者
- 再次感谢您的认可,转载请遵守如上转载须知!
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)