这是一篇关于windows11的深度学习环境解决方案,如果你的电脑是win10系统,建议升级到最新版的win10,或直接安装windows11,官网地址:https://www.microsoft.com/zh-cn/software-download/windows11
- 首先深度学习为什么要使用linux,这是知乎给的答案:https://www.zhihu.com/question/263666539
- 为什么使用wsl2
- WSL是适用于Linux的Windows子系统,可让开发人员按原样运行GNU/Linux环境-包括大多数命令行工具、实用工具和应用程序-且不会产生传统虚拟机或双启动设置开销。
- WSL2相对WSL1提高文件系统性能,且支持全系统调用兼容性。WSL 2 使用最新、最伟大的虚拟化技术在轻量级实用程序虚拟机 (VM) 中运行 Linux 内核。但是,WSL 2 不是传统的 VM 体验。
- 最重要的是不用装双系统,也能得到很好的GPU训练体验!
wsl2安装
Microsoft英文版文档网址:https://docs.microsoft.com/en-us/windows/wsl/install-manual官网已经介绍的很详细了,总结就是以下几步操作。
- 用管理员身份打开PowerShell.(打开方法见视频),然后在PowerShell中,输入下面的命令。
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
- 启动虚拟机给功能。同样在PoweShell中输入下面的命令。输入完命令后,要重启一下电脑,然后再进行第三步。
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- 下载Linux内核更新包。下载地址:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
- 将WSL2设置为默认版本。打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本,命令如下。
wsl --set-default-version 2
安装您选择的 Linux 发行版
打开Microsoft Store并选择您喜欢的 Linux 发行版。
本文使用的是Ubuntu 20.04 LTS
直接点击安装即可,windows11做了优化下载速度也很快。
安装完成后,就可以使用了。如果是首次进入需要你设置用户名和密码。当进入系统后,可以使用下面的命令来查看当前Ubuntu的版本。
wslfetch
安装图形桌面系统(非必要)
windows显卡驱动安装
!!!在windows上安装适配wsl的显卡驱动(以前安装驱动了的也要安装,会覆盖原来的),安装网址:
https://developer.nvidia.com/cuda/wsl/download
在 windows 的cmd命令行中输入nvidia-smi
有显卡信息说明安装成功。
在 ubuntu 中安装 cuda toolkit
- 在ubuntu的命令行中依次输入以下四句命令。(这些命令是官网中“Setting up CUDA Toolkit”部分的教程)
注意:命令中的11-1根据需要版本的不同自行调整(见上面的注意)。例如:安装11.0只需要把后续的11-1改为11-0即可。
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-1
- 第一步完成且没有错误之后,配置环境变量,在ubuntu的命令行中输入,
sudo gedit ~/.bashrc
- 在打开的文件中,按i进入编辑模式,并在文件最底部添加:
export PATH=/usr/local/cuda-11.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
- 保存并退出,回到ubuntu命令行,输入
source ~/.bashrc
验证: 在ubuntu 命令行中输入 nvcc -V ,能够输出 cuda toolkit 信息即可。(如上所述,这里看到的是“运行时版本”)
在 ubuntu 中安装 cudnn
下载后得到的文件夹是cudnn-11.2-linux-x64-v8.1.0.77.arj,这里后缀名是arj,原因不详(我是在Windows下载的),但是可以直接把后缀改成tgz,之后移动到Ubuntu对应的文件夹(Windows的盘符比如说D盘在WSL-Ubuntu里面就是/mnt/d/),移动到Ubuntu的里面(此处我移动到了Ubuntu的Downloads文件夹,以下操作也是在Downloads文件夹下进行操作)就可以进行Cudnn文件的安装(其实是复制):
tar -zxvf cudnn-11.2-linux-x64-v8.1.0.77.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda-11.1/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.1/lib64/
sudo cp /usr/local/cuda-11.1/lib64/libcusolver.so.11 /usr/local/cuda-11.1/lib64/libcusolver.so.10
sudo chmod +x /usr/local/cuda/include/cudnn.h
sudo chmod +x /usr/local/cuda/lib64/libcudnn*
未完,之后更新…