【AI】搭建Windows Linux子系统(WSL2)CUDA环境

AI柱子哥 2024-07-06 12:01:02 阅读 62

0.准备工作

Windows本机安装CUDA Driver

首先去下载页面下载驱动文件

在这里插入图片描述

点击Get CUDA Driver进入下载页面,我看下载页面跟普通驱动下载页面相同,感觉应该不是单独的驱动,只要之前显卡已经安装好了CUDA的驱动,就可以先省略这一步。

1.安装Windows子系统

win11中安装wsl子系统非常方便,只需要执行一个命令即可,系统会自动安装Ubuntu系统,执行完之后需要重启电脑,重启后需要设置用户名和密码,根据自己实际情况设置即可。

<code>wsl --install

安装完重启电脑设置完账号密码后,会看到如下页面:

在这里插入图片描述

这时候就可以操作linux系统了

2.WSL安装CUDA Toolkit

官方的教程地址:https://docs.nvidia.com/cuda/wsl-user-guide/index.html

进入官方下载地址:https://developer.nvidia.com/cuda-toolkit-archive

根据自己安装的CUDA驱动版本选择CUDA Toolkit版本,这里最好与主机的驱动版本一致,否则不知道会出现什么奇怪错误。

在这里插入图片描述

去wsl命令行执行wget命令,可以直接在linux系统上下载Toolkit,然后执行安装命令

<code>wget https://developer.download.nvidia.com/compute/cuda/12.2.0/local_installers/cuda_12.2.0_535.54.03_linux.run

sudo sh cuda_12.2.0_535.54.03_linux.run

安装时可能会报错:Failed to verify gcc version. See log at /var/log/cuda-installer.log for details.

这是因为我们的wsl系统刚刚创建,可能没有安装gcc导致的,可以参考这篇文章解决。

这里也贴一下吧

sudo apt update && sudo apt upgrade -y

sudo apt install build-essential

# 查看安装的gcc版本

gcc --version

然后再执行上面的安装程序,安装完之后打印了下面的信息

===========

= Summary =

===========

Driver: Not Selected

Toolkit: Installed in /usr/local/cuda-12.2/

Please make sure that

- PATH includes /usr/local/cuda-12.2/bin

- LD_LIBRARY_PATH includes /usr/local/cuda-12.2/lib64, or, add /usr/local/cuda-12.2/lib64 to /etc/ld.so.conf and run ldconfig as root

To uninstall the CUDA Toolkit, run cuda-uninstaller in /usr/local/cuda-12.2/bin

***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 535.00 is required for CUDA 12.2 functionality to work.

To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:

sudo <CudaInstaller>.run --silent --driver

Logfile is /var/log/cuda-installer.log

这里的warning可以不用处理,官方文档上说不需要安装driver

安装完成之后需要将路径加入到环境变量中:

export PATH=/usr/local/cuda-12.2/bin:$PATH

export LD_LIBRARY_PATH=/usr/local/cuda-12.2/lib64:$LD_LIBRARY_PATH

3.安装cuDNN(可选)

NVIDIA CUDA® 深度神经网络库 (cuDNN) 是一个 GPU 加速的深度神经网络基元库,能够以高度优化的方式实现标准例程(如前向和反向卷积、池化层、归一化和激活层)。

全球的深度学习研究人员和框架开发者都依赖 cuDNN 来实现高性能 GPU 加速。借助 cuDNN,研究人员和开发者可以专注于训练神经网络及开发软件应用,而不必花时间进行低层级的 GPU 性能调整。cuDNN 可加速广泛应用的深度学习框架,包括 Caffe2、Chainer、Keras、MATLAB、MxNet、PaddlePaddle、PyTorch 和 TensorFlow。如需获取经 NVIDIA 优化且已在框架中集成 cuDNN 的深度学习框架容器,请访问 NVIDIA GPU CLOUD 了解详情并开始使用。

下载地址:https://developer.nvidia.cn/cudnn 或 https://developer.nvidia.com/rdp/cudnn-archive#a-collapse896-120

在运行PyTorch训练和推理时,通常需要安装cuDNN,但并非绝对必要。cuDNN是一个GPU加速的深度神经网络库,能够以高度优化的方式实现标准例程,如前向和反向卷积、池化层、归一化和激活层。

在某些情况下,部分深度学习框架会将CUDA、CUDNN打包在whl包里,因此无需手动安装。例如,PyTorch的大部分版本就是这样,所以无需手动安装。

4.修改WSL安装路径

显然,此时的wsl默认安装在c盘,随着系统的使用,会占用我们C盘的空间,所以我们将其打包放到其它盘去。

1.查看WSL发行版本

在Windows PowerShell中输入命令:

wsl -l --all -v

PS C:\Users\Admin> wsl -l --all -v

NAME STATE VERSION

* Ubuntu Stopped 2

2.导出分发版为tar文件到d盘

wsl --export Ubuntu d:\wsl-ubuntu20.04.tar(Ubuntu修改成你现在的发行版名称)

3.注销当前分发版

wsl --unregister Ubuntu (Ubuntu修改成你现在的发行版名称)

4.重新导入并安装WSL在d:\wsl-ubuntu20.04(可以修改成你自己想要的目录)

wsl --import Ubuntu d:\wsl-ubuntu20.04 d:\wsl-ubuntu20.04.tar --version 2

5.设置默认登陆用户为安装时用户名

Ubuntu config --default-user Username

6.删除tar文件(可选)

del d:\wsl-ubuntu20.04.tar

参考文档

5.WSL与主机传输文件

从windows拷贝文件到WSL

先查看目录挂载情况

sudo ls /mnt/*

找到文件,拷贝到当前目录

cp /mnt/盘符/文件 .

附WSL官方文档地址:https://learn.microsoft.com/zh-cn/windows/wsl/

参考文章:https://zhuanlan.zhihu.com/p/436393852



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。