ubuntu中显示本机的gpu_在WSL2中使用CUDA

ubuntu中显示本机的gpu_在WSL2中使用CUDA_第1张图片

2020年6月17日, 英伟达和微软发布wsl2使用GPU的详细教程。

CUDA Toolkit Documentation​docs.nvidia.com
ubuntu中显示本机的gpu_在WSL2中使用CUDA_第2张图片

我第一时间体验了这个新特性,并把过程分享出来。

1. 安装windows预览版并切换到“Fast Ring" 通道。

ubuntu中显示本机的gpu_在WSL2中使用CUDA_第3张图片

要求windows版本为 Build 20145或更高。

我的版本是 Build 20150.

ubuntu中显示本机的gpu_在WSL2中使用CUDA_第4张图片

2. 在windows上安装CUDA on WSL 驱动

CUDA on WSL 驱动下载地址

https://developer.nvidia.com/cuda/wsl

根据自己的GPU类型(GeForce and Quadro)选择对应的驱动。

我的笔记本显卡是MX150,就下载GeForce驱动。

不需要在wsl下安装nvidia驱动,windows会自动为wsl安装nvidia驱动。

3. 安装WSL2

这个可查看微软官方中文文档:

在 Windows 10 上安装适用于 Linux 的 Windows 子系统 (WSL)​docs.microsoft.com
ubuntu中显示本机的gpu_在WSL2中使用CUDA_第5张图片

确保WSL2的linux内核为4.19.121+。

d814b1d79aacaf0a76f94c9757c6a556.png

如果不是,可以通过windows update更新。

ubuntu中显示本机的gpu_在WSL2中使用CUDA_第6张图片

4. WSL2中安装CUDA

sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
sudo sh -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda.list'
sudo apt-get update
sudo apt-get install -y cuda-toolkit-11-0

测试cuda(pytorch测试)

5. nvidia docker测试

安装docker 及 nvidia-docker 2

curl https://get.docker.com | sh
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
curl -s -L https://nvidia.github.io/libnvidia-container/experimental/$distribution/libnvidia-container-experimental.list | sudo tee /etc/apt/sources.list.d/libnvidia-container-experimental.list
sudo apt-get update
sudo apt-get install -y nvidia-docker2
sudo service docker stop
sudo service docker start

运行测试的docker容器

docker run --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark

ubuntu中显示本机的gpu_在WSL2中使用CUDA_第7张图片

成功!

6. 已知的问题

性能有待优化

不支持NVML

不支持PTX JIT

不支持CUDA IPC/Memmap

docker只支持 --gpus all,对于多卡的机器不能选择特定的gpu。

你可能感兴趣的:(ubuntu中显示本机的gpu)