当前位置:   article > 正文

2023年11月最新WSL2系统安装及深度学习环境CUDA、CUDNN 和Pytorch配置_wsl2 安装 更新

wsl2 安装 更新

一 前言

本文创作于2023年11月,记录自己安装WSL2子系统及配置深度学习环境的过程,中间参考其他博客的内容,但偶有疏漏之处,因此记录一个完整版本,供后人交流学习。
配置:
系统:Windows 11
显卡:GeForce RTX 3090

二 WSL2系统安装

前提条件:
查看是否开启虚拟化:windows机器需要支持虚拟化,并且需要在BIOS中开启虚拟化技术,因为WSL2基于hyper-V。建议使用Windows11操作系统。
查看是否开启虚拟化

2.1 安装步骤

可进入链接:旧版 WSL 的手动安装步骤自行查看。也可以使用Microsoft帮助文档中安装WSL的官方方法,只不过对具体系统有要求。本人使用的是旧版安装方法,安装的是Ubuntu22.04版本。具体细节如下:

2.1.1 系统中开启开发者模式

打开开发者模式

2.1.2 开启“适用于Linux的Windows子系统”

进入“控制面板-程序-启用或关闭Windows功能”:
勾选“适用于Linux的Windows子系统”、“虚拟机平台”,然后点击确定。完成后重启电脑。

在这里插入图片描述
勾选子系统和虚拟机平台

2.1.3 启用虚拟机功能

安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使用此功能。以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  • 1

重新启动计算机,以完成 WSL 安装并更新到 WSL 2。其实我觉得这一步在上面已经勾选了,这是Microsoft文档中的一部分,只要打开“虚拟机平台”即可,多尝试没有关系。无需过多关注。

2.1.4 下载 Linux 内核更新包

Linux 内核更新包会安装最新版本的 WSL 2 Linux 内核,以便在 Windows 操作系统映像中运行 WSL。
最新包:链接点击即可下载,官方文档中同样有。运行,下载该安装包,并默认安装即可。

2.1.5 设置WSL 2 为默认版本

将 WSL 2 设置为默认版本:

wsl --set-default-version 2
  • 1

2.1.6 安装Ubuntu22.04

打开微软商店(Microsoft Store)搜索“Ubuntu”,然后选择Ubuntu22.04 LTS点击安装,直到下载完成为止;
微软商店
此时,安装完成。我们可以在开始菜单看到Ubuntu22.04图标,点击打开,设置用户名和密码(密码是看不见的,输入两次即可)。此时可以在此电脑中看到Linux,打开它可以看到Ubuntu的文件,后续与Ubuntu之间的文件操作可以从此处进行。
WSL子系统界面

2.1.7 迁移子系统位置

子系统默认安装在系统盘,如果系统盘容量不够,可以迁移子系统位置,安装到D盘或其他盘。

# 导出分发版为tar格式文件到D盘上并注销。
wsl --export Ubuntu-22.04 d:\ubuntu22.04.tar
# 注销此版本
wsl --unregister Ubuntu-22.04
# 重新导入并安装WSL在D盘
wsl --import Ubuntu-22.04 d:\wsl-ubuntu22.04 d:\ubuntu22.04.tar --version2
# 设置默认用户为之前安装的用户,不然默认为root用户
Ubuntu2204.exe config --default-user **(你的用户名)
 # 删除安装包
 del d:\ubuntu22.04.tar
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

三 WSL2子系统深度学习环境配置

配置:
Windows11专业版、WSL2子系统、3090显卡、NVIDIA最新驱动、CUDA11.8及配套CUDNN、Pytorch2.1.0

3.1 Windows下安装NVIDIA驱动

进入Nvidia官方链接官方驱动 | NVIDIA,根据自己的系统,显卡型号,下载类型选择“Game Ready 驱动程序”即可,下载完成,安装在Windows环境下即可。

3.2 安装anaconda

3.2.1 官网下载安装包

进入anaconda官网,选择download,下载最新版即可,如图15所示。Windows环境下载完成后将此安装包复制到Ubuntu22.04中Ubuntu安装路径中,即Linux/Ubuntu-22.04/home/(你的用户名)/ 中,然后在Ubuntu的命令行窗口通过下图所示命令解压并安装该文件即可。
在这里插入图片描述

anaconda安装包下载及安装
之后,根据安装提示,一直回车(enter)+yes即可安装成功。如果环境变量报错,则说明要将anaconda环境变量配置进入bashrc文件中,source命令更新bashrc文件,如下图所示:
添加anaconda环境变量

export PATH=/home/(your_user_name)/anaconda3/bin:$PATH
source ~/.bashrc
  • 1
  • 2

这里如果有问题,请搜索Linux系统anaconda添加环境变量,应该不难解决。或者采取下面另一种方法:

sudo gedit /etc/profile
  • 1

打开文件,在文件末尾添加:

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

通过下面命令,查看已安装得环境变量,看anaconda环境变量是否添加进来。

echo $PATH
  • 1

3.3 换源

所谓换源,是因为国内通道可能受限,一是下载速度慢,二是有的安装包当前通道(channel)不一定存在,因此需要换源。

3.3.1 前提:

(1)进入清华镜像源官网:清华大学开源软件镜像站 | Tsinghua Open Source Mirror,之后右下角点击“使用帮助”,直接进入需要的地方,不需要看主界面。
清华镜像源“使用帮助”
(2)学会使用“vim”命令。
vim命令是Linux系统编辑系统内文件的命令,通常进入文件后,需使用 i(insert)键,开启插入模式,即可在文件内写入、删除字符;使用esc键即可推出插入模式;退出插入模式后,使用:q可退出该文件;使用:wq即可保存在文件中的编辑内容,并退出该文件。

3.3.2 apt换源:

(1)输入命令,进入下列文件:

vim /etc/apt/sources.list
  • 1

(2)按”i“键,进入vim的插入模式复制如下代码(建议自行进入清华镜像源官网获取,点击“使用帮助”,左侧一列选择Ubuntu即可获取下图信息)到sources.list:
apt换源信息
(3)最后按ESC键退出插入模式,输入:wq保存退出
(4)更新源:通过下面两行代码更新源(换了之后需要更新)

sudo apt-get update
sudo apt-get upgrade
  • 1
  • 2

3.3.3 conda换源:

(1)生成.condarc文件
命令 :

conda config --set show_channel_urls yes
  • 1

(2)修改.condarc文件,写入源文件

vim ~/.condarc
  • 1

(3)进入清华镜像源,右下角使用帮助,点击左侧anaconda,复制r如下图信息,写入condarc文件并保存退出:
conda换源信息
网上其他命令如下图,效果与上文相同,且上文更专业。这些方法是添加通道channel,我们的方法通道是默认default,而default_channels则为清华镜像通道。
其他conda换源方法

3.4 安装CUDA

建议直接下载cuda11.8版本,本人曾下载11.3版本,然后再对应版本的cudnn以及pytorch中,无法实现深度学习模型的运行,报错为:无法找到lib.cudnn.so文件lib.cudnn.so文件类型未定义等。耗时几天之后,仍无法解决第二个问题(第一个问题通过添加wsl的环境变量可以解决),最后不得已之下,删除并重新安装WSL系统,最终通过安装CUDA11.8及其对应版本cudnn、pytorch解决问题。

(1)官网获取下载命令:

官网:CUDA Toolkit 11.8 Downloads | NVIDIA Developer
Installer Type:可选择三种的任意一种,根据下面给出的安装命令一行行输入即可,如果一种方法安装不成功,则更换另一种,这里选择第三种方法,命令较少。(如出现问题,百度即可解决)

Installer Type:可选择三种的任意一种,根据下面给出的安装命令一行行输入即可,如果采用第一种方法,第四行代码执行完毕之后,会生成一行代码,可使用该行代码替代第五行代码继续执行,后面代码不变。本文以第三种方法举例,命令较少。作者尝试过第三种方法,第一次成功安装;第二次则安装失败,原因是解压失败,后来切换第一种安装方法,成功安装。
在这里插入图片描述
CUDA11.8下载

(2)命令行下载:

第一行命令:wget命令常用于从网络链接中下载安装包
第二行命令:sudo为使用管理员权限,需要密码。sh为解压命令,后面为下载的压缩包。
注:如果使用命令,系统报gcc的错误,则需要在这串命令后面加上 –override
如果还不行,建议更换下载方式。
程序会进行解压和安装,速度会比较慢,最后会出现如下界面:输入accept+回车确认。
CUDA11.8安装接受
之后便会出现如下界面,前面带有[X]的表示你要安装的工具,最后选择Install+回车确认,即可安装完成。
CUDA11.8安装确认

3.5 添加环境变量

(1)sudo vim ~/.bashrc打开文件

(2)通过vim命令操作将下面两行环境变量添加到文件尾部

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
  • 1
  • 2

bashrc文件内容
此处,图中出现错误,PATH写成了PAHT,已修改!

(3)更新文件:source ~/.bashrc

(4)使用nvcc -V命令查看是否安装成功,成功可以看出安装的版本。

在这里插入图片描述

3.6 安装cudnn

(1)进入官网cuDNN Archive | NVIDIA Developer

选择cuDNN安装包,版本必须与CUDA相匹配。这里选择2023年8月份左右的cuDNN,适合所有的11版本的CUDA。
cuDNN文件

(2)解压复制

在Windows环境下下载完毕后,将安装包复制到wsl系统的/home/**文件夹下,使用tar命令解压,使用cp命令(copy,复制)将解压出的文件夹命令复制到cuda对应的文件夹内。
解压命令:

tar xvf cudnn-linux-x86_64-8.9.4.25_cuda11-archive.tar.xz
  • 1

复制命令:cp 复制目录 粘贴目录

sudo cp cuda/include/*/usr/local/cuda/include/
sudo cp cuda/lib64/* /usr/local/cuda/lib64/
  • 1
  • 2

注:如无报错,即cudnn安装完成。如报错,则查看复制目录是否错误(粘贴目录是固定不变的)。

3.7 安装Pytorch

Pytorch版本与cuda必须匹配,进入官网PyTorch,在命令窗口运行如下命令即可自行安装pytorch。
pytorch安装界面
命令:

conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
  • 1

3.8 测试环境是否安装成功

(1)nvidia-smi命令:

该命令可测试Windows上是否安装nvidia驱动,右上角的cuda版本与实际安装版本不一致,因为这代表的是该驱动可以安装的最大cuda版本,并非你实际安装版本。
nvidia-smi界面

(2)nvcc -V命令:

可查看cuda版本

(3)输入python,查看anaconda是否安装成功

import torch,查看pytorch是否安装成功
torch.cuda.is_available(),查看是否可以使用cuda。
torch.cuda.device_count(),查看可使用的GPU数量。
判断是否可以使用cuda
*至此,深度学习环境安装完毕。
之后,如果想在wsl2进行深度学习训练,查看参考文献中使用vscode在wsl环境进行模型训练,我就不再重复赘述了。

参考文献

[1] win11的ubuntu子系统 WSL2 下配置cuda、cudnn、GPU pytorch环境
[2]WSL2-Ubuntu20.04配置深度学习环境(CUDA、CUDNN、Pytorch)
[3]Windows系统下Linux子系统cuda、pytorch及tensorrt环境搭建与VScode连接
[4]安装WSL2和Ubuntu22.04版本
[5]conda配置清华源

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号