wsl + docker 配置深度学习环境
配置深度学习环境 wsl + docker
之前配置过相关的环境但是现在忘了,所以重新回顾一下。我打算用wsl + docker 来搭配我的深度学习环境。我参考了这个blog 做的 Setup Windows 10/11 machines for Deep Learning with Docker and GPU using WSL
首先是安装wsl2 ,由于 我之前配置过docker 所以安装了wsl2,并不需要重新安装,直接跳到下一步,后面就是需要安装NVIDIA 的驱动,由于之前打游戏,换过驱动,我又不想重装,就用了497.09版本,有点老 ,凑合着用吧。
之后安装 CUDA Tookit
什么是 CUDA Tookit?
下面是gpt给出的回答
1 | CUDA Toolkit 是由 NVIDIA 提供的一套开发工具,用于创建和优化基于 GPU 加速的高性能应用程序。它包含了多个组件,帮助开发者充分利用 GPU 的计算能力。以下是 CUDA Toolkit 的主要组成部分: |
由于我的是11.5 我只好下载 11.5版本的工具包
1 | wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin |
接下来就是启动docker 和配置工具包了
1 | curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \ |
之后我们只需要运行相关容器看是否启动成功。
1 | docker run --gpus all -it --rm nvidia/cuda:11.5.2-runtime-ubuntu20.04 nvidia-smi |
至此,大功告成~
后记:我发现如果用wsl + docker 是不需要 安装CUDA Toolkit 的 镜像一般自带?
如果要卸载相关的东西怎么办?问了gpt答案如下。
1.卸载 CUDA Toolkit:
1 | sudo apt-get --purge remove "cuda*" |
2.卸载 NVIDIA 驱动(如果需要):
1 | sudo apt-get --purge remove "nvidia*" |
3.删除残留文件:
1 | `sudo rm -rf /usr/local/cuda* ` |
4.清理包缓存:
1 | sudo apt-get autoremove |
Q:在wls中下载了 cuda 工具包吗 为什么还要拉这个镜像 来执行nvidia-smi 命令, 他是为了测试什么
A:
- 验证 GPU 配置:通过运行
nvidia-smi
命令,你可以确认 Docker 容器是否正确配置了 GPU 加速。这是确保你的 Docker 环境能够访问和利用 GPU 的重要步骤。 - 隔离环境:使用 Docker 镜像可以创建一个隔离的环境,避免与主机系统的依赖冲突。这对于开发和测试不同版本的库和工具非常有用。
- 简化部署:Docker 镜像通常已经预装了所需的库和工具(如 CUDA 和 cuDNN),这使得在不同系统上部署深度学习模型更加方便和一致。
- 便于共享:你可以将配置好的 Docker 镜像分享给团队成员或在不同的机器上使用,确保环境的一致性。
通过拉取并运行带有 CUDA 支持的 Docker 镜像,你可以确保你的 Docker 环境能够正确利用 GPU 进行计算,从而为后续的深度学习模型训练和推理提供支持。
删除下载的安装包:
如果你下载了 CUDA 的安装包
1
.deb
文件,可以删除它们。在你下载文件的目录中运行:
1
2
3bash
复制代码
rm cuda-repo-ubuntu2004-11-5-local_11.5.0-495.29.05-1_amd64.deb请根据实际下载的文件名进行调整。
清理临时文件:
清理 apt的缓存文件:
1
2复制代码
sudo apt-get clean清理 dpkg的旧配置文件:
1
sudo apt-get autoclean
移除不再需要的依赖和包:
可以使用 autoremove 命令来移除不再需要的自动安装的依赖包:
1
sudo apt-get autoremove
后面看还有什么需要补充的后续再看!