Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm

windows子系统wsl2深度学习环境配置

  • 前言
    • 一、准备工作:显卡驱动
    • 二、CUDA10.1配置
      • 1.下载安装
      • 2.设置环境变量
    • 三、cudnn配置
      • 3.检验安装
    • 四、安装Anaconda
    • 五、安装pytorch
    • 六、安装pycharm
      • 1.下载安装
      • 2.创建快捷方式
      • 3.加载conda环境
    • 七、其他设置


前言

       续上一篇Win10/Win11子系统(一)——wsl2+Ubuntu20.04安装记录,系统安装加博客记录花了两天,当然要发挥生产力的作用,这篇配置深度学习环境!

Ubuntu20.04
CUDA10.1
cudnn7.6.5
Anaconda3
pytorch1.8.1
torchvision0.9.0

微软官方教程安装的是cuda11,有需要可以查看!


一、准备工作:显卡驱动

       Win10系统的话需要安装英伟达对linux子系统的显卡驱动CUDA on Windows Subsystem for Linux (WSL),一般是下载GEFORCE的那个(按照自己显卡类型选择);

       Win11系统的话只要在Nvidia设置中把显卡驱动更新到最新版本就可以啦,如下图所示,可以在cmd窗口中通过nvidia -smi查看,至于为何跟nvcc -V显示的CUDA版本不同网上有各种说法,但是不影响使用。

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第1张图片

接下来在开始菜单中Ubuntu20.04 LTS图标或者在windows terminal中选择Ubuntu,输入以下命令安装gcc9:

sudo apt install gcc g++ make

安装CUDA11的话可以跳过下面步骤,但是我要安装的是CUDA10.1,因为cuda10.1不支持gcc-9,因此要手动安装gcc-7,命令如下:

sudo apt-get install gcc-7 g++-7

安装完gcc-7,系统中就存在两个版本的gcc,因此要设置默认的gcc,命令如下:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 1

此命令可以通过update-alternatives设置gcc各版本的优先级,优先级最高的为系统默认版本,可以用下述命令显示其优先级:

sudo update-alternatives --display gcc

同理设置默认的g++:

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 1

显示g++优先级:

sudo update-alternatives --display g++

二、CUDA10.1配置

1.下载安装

在NIVDIA官方的CUDA Toolkit安装界面选择合适版本,这里选择10.1安装

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第2张图片

最下面会出来两行指令用来安装:

wget https://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
sudo sh cuda_10.1.243_418.87.00_linux.run

然后出来以下界面:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第3张图片

输入accept,回车。由于已经在windows系统中安装了NVIDIA显卡驱动,所以这里不需要在子系统中安装CUDA 10.1中附带的驱动,移动到Driver选项上,按空格键将该项取消,如下图。

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第4张图片

移动到Install选项,回车,等待安装完成,完成界面如下图:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第5张图片

2.设置环境变量

sudo nano .bashrc

在末尾添加以下内容:

export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

按Ctrl + O,再按回车键,再按Ctrl + X退出编辑模式

source .bashrc

重新打开linux终端,执行:nvcc -V

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第6张图片

可以看到已经在子系统中安装好了CUDA10.1,然后执行下面命令:

cd ~/NVIDIA_CUDA-10.1_Samples/1_Utilities/deviceQuery
make
./deviceQuery

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第7张图片
从图中也可以看到windows系统和子系统的一些信息。

三、cudnn配置

在 NVIDIA 的官方cudnn安装界面找到与 CUDA10.1 匹配的 cudnn 版本,点击下载(我是在windows系统中下载的),下载后得到的文件夹是 cudnn-10.1-linux-x64-v7.6.5.32.tgz,虽然 wsl2 和 windows 系统文件夹互通,但是作为对Ubuntu一窍不通的我选择移动到Ubuntu对应的文件夹(此处我移动到了Ubuntu 的 Downloads 文件夹,以下操作也是在 Downloads 文件夹下进行操作)

在wsl2子系统内也就是 Ubuntu20.04 图形化界面中,首先使用 cd 将路径切换到 Downloads 文件夹,然后输入下面命令解压:

tar zxvf ./cudnn-10.1-linux-x64-v7.6.5.32.tgz

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第8张图片

然后将解压出的

cuda/include/cudnn.h文件复制到/usr/local/cuda/include文件夹
cuda/lib64/下所有文件复制到/usr/local/cuda/lib64文件夹

可以手动,也可以用下面的命令:

sudo cp cuda/include/cudnn.h /usr/local/cuda-10.1/include/
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda-10.1/lib64/

为上述文件添加读取和执行权限:

sudo chmod a+r /usr/local/cuda-10.1/include/cudnn.h
sudo chmod a+r /usr/local/cuda-10.1/lib64/libcudnn*

使用命令查看 CUDNN 是否安装成功:

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第9张图片

3.检验安装

检验cuda是否能够正常运行,安装cuda时自带一个测试文件,我们需要先cd到指令目录

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第10张图片

进行编译

sudo make

在当前目录查看编译结果

./BlackScholes

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第11张图片

说明CUDA安装成功并且运行正常!!!完结撒花✿✿ヽ(°▽°)ノ✿



四、安装Anaconda

wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh
bash Anaconda3-2021.05-Linux-x86_64.sh

一开始需要一直按着回车键,中间会有需要输入yes,然后一路回车到安装完成,然后关掉窗口重新打开就好了,最后这个yes是询问是否添加环境变量,不幸选了No的话执行:

输入添加到路径的命令:

sudo nano .bashrc

翻到最后,在最后一行输入

export PATH=/home/(your_user_name)/anaconda3/bin:$PATH

按Ctrl + O,再按回车键,再按Ctrl + X退出编辑模式

source .bashrc

完成界面如图,用户名前多了base环境:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第12张图片

输入查看是否安装成功:

conda --version

换源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.sjtug.sjtu.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.sjtug.sjtu.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
conda config --set show_channel_urls yes

五、安装pytorch

创建虚拟环境:

conda create -n pytorchgpu python=3.7 -y

激活环境:

conda activate pytorchgpu

安装pytorch GPU版本,官方下载地址

这里安装pytorch1.8.1+torchvision0.9.1,但是发现历史版本里面只提供从wheel开始编译,而直接conda安装的版本从cuda10.2开始,难受o(╥﹏╥)o:

pip install torch==1.8.1+cu101 torchvision==0.9.1+cu101 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html

编译完成后测试:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第13张图片

No problem!!!


总结:又是三天愉快的搭环境时间,ヽ( ̄▽ ̄)و

2022年3月13日,又加一天!续更!!!


六、安装pycharm

1.下载安装

在子系统的浏览器中打开Pycharm官方下载地址,下载 linux 系统的 pycharm 社区版本。

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第14张图片

点击 OK 开始下载,下载完成后保存在 Downloads 目录中

cd Downloads

解压:

tar -xzvf pycharm-community-2021.3.2.tar.gz

PS:解压完的文件其实就已经是可执行程序了,跟 windows 上解压完还要安装不太一样

我直接把解压的文件移到 Downloads 文件夹外面,也就是直接放在了自己的 user/ 目录下(提示:放在自己的 user/ 下,则只能自己的账号使用,如果想要所有用户都能够使用,则应放在根目录的/opt/ 下面),没有移动的话直接进入 pycharm-community-2021.3.2/bin 目录执行安装,移动了的话先 cd 到移动的文件夹路径下:

cd pycharm-community-2021.3.2/bin
sudo ./pycharm.sh

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第15张图片

然后弹出来安装界面:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第16张图片

阅读声明,勾上选项后 Continue 继续,选择 Don’t Send,然后就可以使用啦!

2.创建快捷方式

以上完成之后,但每次退出时就得重新进入软件,需要重新 cd **** /bin 目录 + sudo ./pycharm.sh ,才能打开软件,所以这一步创建快捷方式!

1)自动创建

打开 Pycharm 后,在 Tools 中选择 Creat Desktop Entry… 即可添加快捷方式(有的版本不一定有)

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第17张图片

2)手动创建

终端输入:

sudo gedit /usr/share/applications/Pycharm.desktop

意思为在 /usr/share/applications 路径下创建名为 Pycharm.desktop 的文件,并弹出一个编辑窗口,在窗口中输入以下内容:

[Desktop Entry]
Type=Application
Name=Pycharm
GenericName=pycharm-2021.3.2
Comment=Pycharm3:The Python IDE
Exec = /home/weizj0328/pycharm-community-2021.3.2/bin/pycharm.sh
Icon = /home/weizj0328/pycharm-community-2021.3.2/bin/pycharm.png
Terminal=pycharm
Categories=Pycharm;

注意:Exec、Icon一定要写绝对路径,pycharm 版本号也要填写正确,也就是下图中的位置:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第18张图片

然后在就可以在/usr/share/applications下看到图标了:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第19张图片

然后在终端中输入命令给与权限:

sudo chmod +x /usr/share/applications/Pycharm.desktop

(chmod +x 文件名 >>> 使此文件变为可执行文件),这一步也就是为了勾选Program-允许作为程序执行文件选项

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第20张图片
然后在图标上 右键-Send To-Desktop(Create Link),在桌面上添加快捷方式,之后直接双击就可以打开啦!

3.加载conda环境

Ubuntu 和 windows 里面好不一样,windows 中是在虚拟环境名称下有个 python.exe 文件,Ubuntu 中却没有,所以 Interpreter 的路径要按照下图中的设置才可以:

Win10/Win11子系统(二)——深度学习环境搭建:WSL2+Ubuntu20.04+CUDA10.1+pytorch1.8.1+pycharm_第21张图片

七、其他设置

1)图形化界面无操作时自动断开

跑代码的时候自动断开可就完蛋了,所以要设置一下:

进入图形界面,点击右上角Applications—>Settings—>Light Locker Settings,设置Automatically lock the session为Never,然后Apply就可以啦。

2)文件权限更改

chmod命令用于改变文件或目录的访问权限
chown 命令更改某个文件或目录的属主和属组
(-R标志以递归方式为其目录和子文件夹分配权限)

3)删除文件

强制删除文件夹并提示:

sudo rm -r 文件夹名

强制删除文件夹不提示:

sudo rm -rf 文件夹名

Tip:
不使用子系统的时候可以关掉,减少内存占用,在windows powershell中输入:wsl --shutdown就可以啦,使用的时候直接点击Ubuntu的图标就行。


彻底完结!!!

你可能感兴趣的:(深度学习,ubuntu,linux)