Windows11 + WSL Ubuntu + Pycharm + Conda for deeplearning
目录
- 前言
- 安装wsl
- wsl安装anaconda并配置环境
- Pycharm连接wsl,并使用conda生成的环境
前言
通常来说在Linux系统下进行深度学习训练的效率要高于Windows系统,大家通常也是使用Linux常见的发行版本Ubuntu。但是Ubuntu对于日常使用不是很友好,于是就有了折中的方案,使用Windows Subsystem Linux (wsl)。
经过测试,在wsl中的训练效率相比Windows提升了大约25%。以下测试中均使用cuda118,唯一的区别是python版本两个是3.9,一个是3.10。
安装wsl
这一部分参考之前的博客windows 11安装wsl2,ROS以及窗口可视化,只需要安装wsl2即可,安装ROS的部分不用理会。
配置cudatoolkit和cudnn
在Windows11自带的终端中打开上一步安装好的Ubuntu系统,之后的操作就和使用在Ubuntu主机上使用命令行完全一样。
wsl2和windows11共用显卡驱动,因此我们只需安装cudatoolkit和cudnn。以后windows显卡驱动正常更新即可。
conda命令安装后虽然也可以用cudnn,但是不是完整版,不能编译。如果你需要编译功能,还是需要安装完整版本的cudatoolkit。
安装cudatoolkit
可直接去官网下载所需版本:
https://developer.nvidia.com/cuda-toolkit-archive
我安装是11.8版本,因为pytorch官方的conda安装命令最高到11.8~版本对应安装,出问题的可能性最小。注意安装的时候选择wsl2版本安装!
注意安装的时候选择wsl2版本安装!
注意安装的时候选择wsl2版本安装!cuda11.8 wsl2 ubuntu版本的安装链接
将nvidia官方给的命令,一条条复制到wsl2的ternimal中即可。中间如果遇到问题百度帮到你~
安装结束之后执行nvcc -v,会提示没有nvcc可执行,这并不是因为我们cudatoolkit没安装好,而是因为环境变量还没配置好。
cuda环境变量配置
sudo nano ~/.bashrc
将以下内容添加进文件最后
export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
保存退出后(Ctrl+x),更新一下环境变量:
source ~/.bashrc
这时候在执行 nvcc -V 就能够显示cuda版本了。
安装cudnn
严格来讲cuDNN不能叫安装。它其实是对CUDA的一些补充,所以“安装”过程很简单。去英伟达官网下载对应CUDA 11.8的cuDNN压缩包(这一步可能需要注册英伟达账号)。解压之后得到cuda目录,cuda目录下面有include和lib64两个子目录,将这两个目录下面的所有文件拷贝到CUDA 11.8安装路径对应的目录下面即可。
下载8.8.1 for cuda11.x
将文件保存到windows环境,然后直接复制到wsl2 ubuntu的home目录下,和在windows环境中复制粘贴一样操作。
在wsl的ternimal中进入到home目录,然后解压下载的文件
sudo tar -xvf cudnn** #省略部分按tab自动补全
然后把解压得到的文件分别拷贝到对应的文件夹(注意,下面命令中的 /lib/和/include/ 指的是刚刚解压得到的文件夹里的):
#以下是安装命令 sudo cp -r /lib/* /usr/local/cuda-11.8(自己检查具体的版本修改路径)/lib64/ sudo cp -r /include/* /usr/local/cuda-11.8(自己检查具体的版本修改路径)/include/ #为更改读取权限: sudo chmod a+r /usr/local/cuda-11.8(自己检查具体的版本修改路径)/include/cudnn* sudo chmod a+r /usr/local/cuda-11.8(自己检查具体的版本修改路径)/lib64/libcudnn*
注意操作要在相应的文件夹下进行哦!
检查cudnn是否安装成功
cat /usr/local/cuda-11.8/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
wsl安装anaconda并配置环境
- 安装anaconda
anaconda3官方下载,选择linux版本,鼠标放在其上方右键,复制链接。
回到Ubuntu的terminal,输入:
wget https://repo.anaconda.com/archive/Anaconda3-2023.03-Linux-x86_64.sh
运行以上代码,将会下载anaconda3到wsl ubuntu中。
之后执行:
sh Anaconda3-2023.03-Linux-x86_64.sh
只需要输入 sh A 然后按Tab键,系统会自动补齐下面内容。
接下来就是安装过程,只需要根据提示按回车或者输入yes即可。
conda配置环境
conda创建虚拟环境
conda create --name cu118py310 python=3.10 #--name 后面是创建环境的名字,按自己的习惯命名,python=XX,输入自己想用的版本号 conda activate cu118py310 #激活刚刚创建的环境
配置pytorch
前往pytorch官网,选择需要的环境(注意这里选择linux OS),复制conda命令,在terminal中粘贴,回车,安装环境:
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
Pycharm连接wsl,并使用conda生成的环境
Pycharm专业版(社区版和教育版没有方便的wsl功能,软件的下载链接在下面),点击右下选择添加新的Interpreter,操作如下图所示:
选择自己创建的Linux_distribution,然后Next:
Virtualenv Enviroment–Existing–点击…–选择这个路径 \wsl$\Ubuntu-22.04\home\username\anaconda3\envs\cu118py310\bin\python3,Create。
等待片刻,新的环境就配置好了。然后就可以使用这个环境训练跑起来!
软件百度网盘:链接:https://pan.baidu.com/s/1YkT8CiObO3v2Pnmmld2pqA?pwd=ci4h
提取码:ci4h
Onedrive: https://1drv.ms/u/s!Arq4VGYuCz4AieNcw-nrj4XXtrugzQ?e=kmmVwH