# 在 WSL2(archlinux) 及 Podman 中启用 Nvidia GPU 加速


在 WSL2 环境中使用 Podman 进行容器化开发时，启用 Nvidia GPU 加速可以显著提升机器学习、深度学习和其他 GPU 密集型应用的性能。本文将详细介绍在 Arch Linux WSL2 环境中配置 Podman GPU 支持的完整流程。

## 前置条件

在开始配置之前，请确保你的环境满足以下要求：

- Windows 10/11 with WSL2 enabled
- 支持 CUDA 的 Nvidia 显卡
- 已安装 Arch Linux WSL2 发行版
- 已安装 Podman

## 配置步骤

### I. 安装 Windows 端 Nvidia 驱动

首先需要在 Windows 主机上安装最新的 Nvidia 驱动程序。请访问 [Nvidia 官网](https://www.nvidia.com/drivers/) 下载并安装适合你显卡型号的最新驱动。

### II. 在 WSL2 中安装 nvidia-utils

在 Arch Linux WSL2 环境中，安装 nvidia-utils 包来提供必要的 GPU 支持：

```bash
sudo pacman -S nvidia-utils
```

这个包提供了与 Windows 端 Nvidia 驱动通信所需的库文件和工具。

### III. 验证 GPU 可用性

安装完成后，可以通过以下命令验证 GPU 是否正确识别：

```bash
nvidia-smi
```

如果配置正确，你应该能看到类似以下的输出，显示你的显卡信息和当前状态。

```plaintext
Wed Jul 23 11:52:02 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 575.64.03              Driver Version: 576.88         CUDA Version: 12.9     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 2080 ...    On  |   00000000:01:00.0  On |                  N/A |
|  0%   53C    P0             65W /  260W |     725MiB /   8192MiB |      2%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A              32      G   /Xwayland                             N/A      |
+-----------------------------------------------------------------------------------------+
```

### IV. 配置 Podman GPU 支持

确保 Podman 已正确安装并配置。如果尚未安装，可以使用：

```bash
sudo pacman -S podman
```

### V. 测试 GPU 加速功能

使用以下命令测试 Podman 中的 GPU 加速是否正常工作：

```bash
podman run --rm --device nvidia.com/gpu=all docker.io/nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi
```

如果一切配置正确，这个命令将：

1. 下载 Nvidia CUDA 基础镜像
2. 在容器中运行 nvidia-smi 命令
3. 显示 GPU 信息，证明容器可以访问宿主机的 GPU

## 后续使用

配置完成后，你就可以在 Podman 容器中运行各种 GPU 加速的应用，如：

- TensorFlow/PyTorch 深度学习训练
- CUDA 并行计算程序
- GPU 加速的数据处理任务

使用时记得在 `podman run` 命令中添加 `--device nvidia.com/gpu=all` 参数来启用 GPU 访问。
如果在 compose 文件中使用，则需要添加 `devices` 配置：

```yaml
devices:
  - nvidia.com/gpu=all
```


---

> 作者: Nite  
> URL: https://www.nite07.com/zh-cn/posts/wsl-podman-nvidia/  

