如何在 Docker 容器中使用 GPU?

推荐答案

要在 Docker 容器中使用 GPU,可以按照以下步骤进行配置:

  1. 安装 NVIDIA Container Toolkit

    • 首先,确保主机上安装了 NVIDIA 驱动程序。
    • 然后,安装 NVIDIA Container Toolkit,它允许 Docker 容器访问 GPU。
    -- -------------------- ---- -------
    - -- ------ ---
    ---------------- -------------------- ---------------
    ---- -- -- --------------------------------------------- - ---- ------- --- -
    ---- -- -- ----------------------------------------------------------------------- - ---- --- ------------------------------------------
    
    - -------- ------------------------
    ---- ------- ------
    ---- ------- ------- -- ------------------------
    
    - -- ------ --
    ---- --------- ------- ------
  2. 运行容器时指定 GPU

    • 使用 --gpus 参数来指定容器可以使用的 GPU 数量或特定 GPU。
  3. 验证 GPU 是否可用

    • 在容器内运行 nvidia-smi 命令,查看 GPU 是否正常工作。

本题详细解读

1. NVIDIA Container Toolkit 的作用

NVIDIA Container Toolkit 是一个用于 Docker 的工具包,它允许 Docker 容器访问主机上的 NVIDIA GPU。通过安装这个工具包,Docker 容器可以像在主机上一样使用 GPU 进行计算。

2. --gpus 参数的使用

--gpus 参数是 Docker 19.03 及以上版本引入的,用于指定容器可以使用的 GPU 资源。你可以通过以下方式使用这个参数:

  • all:使用所有可用的 GPU。
  • 2:使用 2 个 GPU。
  • "device=0,1":使用特定的 GPU(例如 GPU 0 和 GPU 1)。

3. 验证 GPU 是否可用

在容器内运行 nvidia-smi 命令可以查看 GPU 的状态。如果 GPU 正常工作,你将看到与主机上运行 nvidia-smi 类似的输出,显示 GPU 的使用情况、温度、内存等信息。

4. 注意事项

  • 确保主机上安装了正确版本的 NVIDIA 驱动程序。
  • 确保 Docker 版本为 19.03 或更高版本,以支持 --gpus 参数。
  • 如果使用的是 Kubernetes 或其他容器编排工具,可能需要额外的配置来支持 GPU。
纠错
反馈