赞
踩
目的:日常办公主机装配了 Windows10系统,课题工作主要在远程Linux主机上完成,但偶尔需要在本地主机进行代码测试开发,双系统切换效率太低,因此想利用Windows中的Linux子系统(WSL)完成相应功能
说明:在Windows 10 21H2或者Windows 11版本,启用WSL V2版本后可以在WSL中使用系统的GPU资源,进而使用PyTorch等深度学习工具或者利用NVIDIA-Docker实现容器化GPU使用
系统至少为Windows10 21H2版本,或者为Windows 11, 如果是低版本,需要先升级。可以按住 Win+R 输入 winver
查看系统版本
按照 设置->应用->程序和功能->启用或关闭 Windows 功能
的步骤,确认将WSL启用:
设置完成,更新重启之后,打开 Microsoft Store 应用商店,安装 Ubuntu-20.04 或者其他个人习惯使用的 Linux 发行版。
安装完成之后可以打开,进入 Ubuntu-20.04 终端,完成系统设置,按照要求设置用户名和密码之后可以进入如下界面:
(Windows11 可忽略,版本自带是V2)确保 WSL 版本是 V2,可以通过 wsl.exe -l -v
查看对应版本:
如果看到还是 VERSION 1,则可以按 微软官网教程 将 WSL1 升级到 WSL2,然后运行wsl --set-version Ubuntu-20.04 2
将版本进行升级。最佳做法是确认升级到 WSL2 之后,再在应用商店安装 Ubuntu 等 Linux 发行版。
完成上述准本工作之后,为了保证安装顺利,可提前准备好需要的包:
将上述步骤下载得到的 NVIDIA CUDA WSL驱动 在Windows 本地安装,双击打开 EXE 文件后按照导引运行即可
打开 WSL 终端,将下载的另外两个包放到方便查找的目录,例如如果在主机的 D:\\Downloads\\cuda
目录:
则此时可以在 WSL 中 cd /mnt/d/Downloads/cuda
进入该目录:
进入目录后运行以下命令安装:
# 如果之前没有提前下载,则输入 wget 命令下载;否则可略过下述所有 wget 命令
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-4-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda
注: 上述安装的是 11.4 版本的 CUDA,例如 Pytorch 目前最高支持 11.3 版本,则可以修改上面的链接,下载对应版本即可。
驱动完成安装后,可以利用 nvidia-smi
查看是否安装成功:
右上角显示的 11.6 实际上是主机安装的驱动,和实际的 CUDA 版本无关,可以通过运行 /usr/local/cuda/bin/nvcc -V
查看实际的版本
CUDNN 安装和正常一样下载解压即可。
从清华等 国内Conda源 下载自己需要的 MiniConda 版本,(MiniConda 包含基本的 Python 环境和 Conda 等包管理器,比 AnaConda 更精简)
下载后执行 bash MiniConda-XXXX.sh
安装即可
可以直接参照官网的 conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
安装,或者通过其他的 pip 或者提前下好安装包等方式。
如果在远程已经有安装配置好的环境,且远程环境与 WSL 环境兼容且驱动等也一致(例如远程服务器与本地 WSL 都是 Ubuntu 20.04,都安装的是一样的 MiniConda,且都安装了 CUDA-11.3 驱动),则此时可以直接将远程服务器的环境用于本地
pip install conda-pack
conda env list
conda pack -n torch -o /home/Downloads/torch.tar.gz
scp user@192.168.100.200:/home/Downloads/torch.tar.gz ./
/home/xxx/miniconda/envs/torch
目录 (先在 envs 目录下新建 torch 目录 )cd /home/xxx/miniconda/envs/torch
进入目录tar zxf torch.tar.gz
rm torch.tar.gz
安装完成后,可以在其中检查 CUDA 是否可用:
python -c "import torch; print(torch.cuda.is_available())"
可以看到已经能够使用。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。