WSL安装Ubuntu22.04,以及深度学习环境的搭建

安装WSL

安装 WSL 2 之前,必须启用"虚拟机平台"可选功能。 计算机需要虚拟化功能才能使用此功能。

以管理员身份打开 PowerShell 并运行:

python 复制代码
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

下载 Linux 内核更新包:l链接:

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

下载完成后更新。

将 WSL 2 设置为默认版本,命令:

python 复制代码
wsl --set-default-version 2

打开 Microsoft Store,搜索WSL,选择你偏好的 Linux版本。

我选择的是Ubuntu22.04版本。点进去就可以看到下载链接

下载即可。下载完成后,启动系统,配置用户名和密码。

输入nvidia-smi,检查是否能找到显卡,正常情况,如下图:

一些问题

WslRegisterDistribution failed with error: 0x8007019e The Windows Subsystem错误的解决方案

执行命令

python 复制代码
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

回车,输入Y或者y,然后系统重启。

输入nvidia-smi,显示不正确

这个有可能是wsl的版本不对,出现这种情况是Window的版本太低了!升级到21H2或者Win11。

也可以通过观察Ubuntu的版本,如下图:

如果wsl的版本是1.0的,内核是4.XXX

也可以使用命令,查看wsl版本,在PowerShell里输入:

wsl -l -v

红框里的是2,就正确了!如果是1,则要重新安装Ubuntu。

执行命令:

wsl --list

查找wsl的列表。

wsl --unregister Ubuntu-22.04

注销列表中显示的Ubuntu系统

然后,重新打开Ubuntu系统。

注:WSL系统使用的显卡驱动是Win系统的驱动,所以不用安装驱动!

安装CUDA

安装gcc,执行命令:

sudo apt update
sudo apt install build-essential

输入Y。

链接:https://developer.nvidia.com/cuda-toolkit-archive

我选用的是12.1版本,如下图:

执行命令:

wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run
sudo sh cuda_12.1.1_530.30.02_linux.run

输入accept。

选择安装的组件,不用安装驱动!

选择Install。

安装完成

接下来,配置环境变量输入vim ~/.bashrc命令打开文件,在文件结尾输入以下语句,保存。

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

然后,点击保存后关闭文档,然后执行命令source ~/.bashrc。

至此cuda安装完成,输入nvcc -V命令查看cuda信息。

安装cuDNN

链接:https://developer.nvidia.com/rdp/cudnn-archive

打开连接,选择CUDA 12.x,这里要和安装的CUDA版本对上!

点击上图红框的位置,就可以看到下图的列表,选择对应的文件,单击后就可以下载,如下图:

在地址栏输入"\wsl$",然后点击Enter键。打开Ubuntu22.04的目录!

然后,找到home路径,如下图:

将下载的cudnn复制到用户名的路径下,如下图:

然后,执行安装命令,命令如下:

 sudo dpkg -i cudnn-local-repo-ubuntu2204-8.9.7.29_1.0-1_amd64.deb

等待cuDNN安装包仓库安装完毕后,最后几行会输出一个添加密钥的命令,类似下面。我们执行输出的那个命令:

执行命令:

sudo cp /var/cudnn-local-repo-ubuntu2204-8.8.0.121/cudnn-local-B66125A0-keyring.gpg /usr/share/keyrings/

更新apt源,让apt包管理器能够找到刚刚安装的cuDNN安装包仓库:

bash 复制代码
sudo apt update

准备安装cuDNN,先查找一下cuDNN安装包仓库中包含的cuDNN深度学习库有哪些版本:

bash 复制代码
sudo apt list libcudnn*

安装cuDNN库,执行命令:

bash 复制代码
sudo apt install libcudnn8-dev libcudnn8-samples

检查一下cuDNN的动态库文件是否安装到位,执行命令:

bash 复制代码
readelf -d /usr/lib/x86_64-linux-gnu/libcudnn.so | grep SONAME

检查libcudnn8-dev是否安装成功,执行命令:

bash 复制代码
cat /usr/include/cudnn_version.h | grep CUDNN_

编译一下cuDNN的示例代码。如果能成功编译并运行,代表你的CUDA工具链和cuDNN库全部正常工作。

bash 复制代码
# 复制示例代码到$HOME目录下,然后进入该目录
cp -r /usr/src/cudnn_samples_v8/ ~
cd ~/cudnn_samples_v8/
 
# 试着编译一份卷积运算的示例代码
cd conv_sample/
# 用apt安装的cuDNN头文件和库目录位置与Makefile中给定的默认位置不同,
# 因此我们先手动指定位置后再make
CUDNN_INCLUDE_PATH=/usr/include/ CUDNN_LIB_PATH=/usr/lib/x86_64-linux-gnu/ make
 
# 编译完成后,执行编译出的二进制文件,进行卷积运算测试
./conv_sample
 
# 运行更多的卷积运算测试案例
source run_conv_sample.sh

运行结果:

相关推荐
余炜yw34 分钟前
【LSTM实战】跨越千年,赋诗成文:用LSTM重现唐诗的韵律与情感
人工智能·rnn·深度学习
莫叫石榴姐1 小时前
数据科学与SQL:组距分组分析 | 区间分布问题
大数据·人工智能·sql·深度学习·算法·机器学习·数据挖掘
如若1231 小时前
利用 `OpenCV` 和 `Matplotlib` 库进行图像读取、颜色空间转换、掩膜创建、颜色替换
人工智能·opencv·matplotlib
YRr YRr1 小时前
深度学习:神经网络中的损失函数的使用
人工智能·深度学习·神经网络
ChaseDreamRunner2 小时前
迁移学习理论与应用
人工智能·机器学习·迁移学习
Guofu_Liao2 小时前
大语言模型---梯度的简单介绍;梯度的定义;梯度计算的方法
人工智能·语言模型·矩阵·llama
我爱学Python!2 小时前
大语言模型与图结构的融合: 推荐系统中的新兴范式
人工智能·语言模型·自然语言处理·langchain·llm·大语言模型·推荐系统
果冻人工智能2 小时前
OpenAI 是怎么“压力测试”大型语言模型的?
人工智能·语言模型·压力测试
日出等日落2 小时前
Windows电脑本地部署llamafile并接入Qwen大语言模型远程AI对话实战
人工智能·语言模型·自然语言处理
麦麦大数据2 小时前
Python棉花病虫害图谱系统CNN识别+AI问答知识neo4j vue+flask深度学习神经网络可视化
人工智能·python·深度学习