wsl2配置cuda和torch

简介

在windows下配置深度学习环境,使用wsl子系统Linux非常的方便。这里记录一下安装步骤

[!NOTE]

wsl2可以直接使用宿主机的显卡驱动,因此需要确保windows已经安装了显卡驱动。

WSL2安装

启用功能

关键点:启用子系统和虚拟机平台,然后重启电脑。

设置WSL的版本为2

1
wsl --set-default-version 2

执行更新wsl命令已确认wsl为最新版

1
2
wsl --update
wsl --install // 安装wslg

此步关键是要挂代理,因为会从github上下载。

安装Linux操作系统

查看可安装版本

1
wsl --list --online // 列出所有可安装的linux版本

开始安装

1
wsl --install -d Ubuntu-20.04 // 安装Ubuntu-20.04

这一步也可以在微软商店上下载。

然后按照要求设置好用户名和密码就可以了。

[!NOTE]

后续的操作都是在WSL2中进行了

在wls中安装cuda

在nvidia官方连接 按照下图及指令在wsl中输入即可。这里可以看到默认下载的cuda是最新的版本,可以看一下自己的显卡支持什么版本进行选择下载。

cuda版本查看及选择

在windows终端中输入nvidia-smi,查看支持的最高的版本,我们安装的wsl中的cuda小于等于这个版本即可

可以在官网这里 找到历史版本,选择下载适合自己的版本即可

我这里下载的版本是如下

cuda加入wsl2的环境变量

直接命令行打开环境变量文件

1
vim ~/.bashrc

把Cuda加入然后刷新

1
2
3
export PATH="/usr/local/cuda/bin:$PATH"

export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"

保存文件然后刷新环境变量

1
source ~/.bashrc

要点:要刷新环境变量

命令行输入 nvcc -V 输出版本信息则视为成功。

wsl2中安装torch

打开官网 按照下面的指令安装即可

1
2
3
4
5
For Linux x86 use:
pip3 install torch torchvision

For Linux Aarch64:
pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cu128

验证GPU能否被调用

打开WSL2,输入python进入交互式编辑器

1
2
3
4
5
6
7
8
9
10
11
12
13
import torch

if torch.cuda.is_available():
device = torch.device("cuda")
x = torch.tensor([1.0, 2.0, 3.0])
x = x.to(device)
y = torch.tensor([4.0, 5.0, 6.0])
y = y.to(device)
z = x + y
print(z)
else:
device = torch.device("cpu")
print("GPU is not available, using CPU")

注意torch.cuda.is_available不代表可用,只有调用Cuda计算成功才是成功了。

附录

这是一篇优秀的博客,必须推荐。