Windows 10,Windows 11 使用WLS2安装Ubuntu及配置Cuda cuDNN使用GPU详解
2022-09-15先决条件
必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11,可以通过cmd命令行输入winver查看,“开始”>“设置”>“Windows 更新”>“检查更新”来更新到最新的 Windows 版本。
安装 WSL 命令
wsl属于系统的功能组件,所以需要从:更多 Windows 功能 -> 找到并勾选 「Hyper-V」和「适用于 Linux 的 Windows 子系统」来安装,并重启。如果以前安装过wsl1则可以通过wsl --update更新版本
安装Linux
wsl --install
此命令将启用运行 WSL 并安装 Linux 的 Ubuntu 发行版所需的功能。 (可以更改此默认发行版),或者用windows的应用商店搜索Ubuntu安装。首次启动新安装的 Linux 发行版时,将打开一个控制台窗口,要求你等待将文件解压缩并存储到计算机上。 未来的所有启动时间应不到一秒
wsl -l -v #检查正在运行的 WSL 版本 wsl --set-default-version <Version#> #将 <Version#> 替换为 1 或 2 建议设置为2
运行Linux
建议安装 Windows 终端来启动Linux系统
wsl2从C盘迁移到D盘
1. 查看Ubuntu 版本号
wsl -l --all -v
2.执行以下命令行,其中Ubuntu-20.04是我的Ubuntu版本,大家可以根据wsl-l的版本号自行修改
wsl --export Ubuntu-20.04 d://wslubuntu//ubuntu-20.04.tar wsl --unregister Ubuntu-20.04 wsl --import Ubuntu-20.04 d://wslubuntu d://wslubuntu//ubuntu-20.04.tar --version 2
迁移之后切换到之前用户
wsl 迁移后打开 ubuntu 发现不是之前的登录用户,以前装的 conda 命令会提示:conda:command not found。
首先不要慌,迁移过来的东西都没丢。
windows 终端里输入:(版本看自己装的是哪个,对应即可)ubuntu2004 config --default-user <用户名> #用户名就输入之前安装 conda 等环境的时候用的用户名。实在想不起来就去 \Ubuntu-20.04\home 里看一眼就知道用户名和安装位置
安装cuda
首先windows系统安装Nvidia最新驱动,最新驱动包括wsl2的驱动,在linux系统无需再安装驱动
可以参考以下链接安装cuda
https://docs.microsoft.com/en-us/windows/ai/directml/gpu-cuda-in-wsl
https://docs.nvidia.com/cuda/wsl-user-guide/index.html#getting-started-with-cuda-on-wsl
本文是安装的cuda11.4,输入以下命令即可安装cuda
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
检测环境是否正常
$ cd /usr/local/cuda-11.4/samples/4_Finance/BlackScholes $ make BlackScholes $ ./BlackScholes
也可以使用命令nvidia-smi,如果要使用 nvcc -V则需要添加环境变量
sudo vim ~/.bashrc
在结尾添加:
export PATH=/usr/local/cuda-11.4/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
更新文件:
source ~/.bashrc
安装cuDNN
参考
https://docs.nvidia.com/deeplearning/cudnn/install-guide/#install-linux
https://blog.csdn.net/qq_41048761/article/details/121439870
https://developer.nvidia.com/rdp/cudnn-archive
https://docs.nvidia.com/deeplearning/cudnn/install-guide/#install-linux
本文是安装cuda11.4版本的cudnn 首先下载11.4对应的cudnn https://developer.nvidia.com/rdp/cudnn-archive
选择如下图的3个文件下载到ubuntu的目录,进入目录输入以下命令安装
sudo tar -xvf cudnn-11.4-linux-x64-v8.2.4.15.tgz sudo cp cuda/include/cudnn*.h /usr/local/cuda/include sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64 sudo chmod a+r cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn* sudo dpkg -i libcudnn8_8.2.4.15-1+cuda11.4_amd64.deb sudo dpkg -i libcudnn8-dev_8.2.4.15-1+cuda11.4_amd64.deb cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 #查看版本