我有一个 GPU 应用程序,可以在图像构建阶段进行单元测试。使用 Docker 19.03,可以指定 nvidia 运行时,docker run --gpus all
但我还需要访问 GPU,docker build
因为我进行单元测试。我怎样才能实现这个目标?
对于使用 nvidia-docker2 的旧版本 docker,无法在构建阶段指定运行时,但您可以将默认运行时设置为 nvidia,并且 docker 构建可以正常工作。我可以在不再需要 nvidia-docker 的 Docker 19.03 中执行此操作吗?如果是这样,怎么办?
我在我的机器(运行 Ubuntu 18.04 和 Anaconda 和 Python 3.7)中添加了一个 GeForce GTX 1080 Ti,以便在使用 PyTorch 时利用 GPU。两张卡都正确识别:
$ lspci | grep VGA
03:00.0 VGA compatible controller: NVIDIA Corporation GF119 [NVS 310] (reva1)
04:00.0 VGA compatible controller: NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] (rev a1)
Run Code Online (Sandbox Code Playgroud)
NVS 310 处理我的 2 显示器设置,我只想将 1080 用于 PyTorch。我还安装了当前在存储库中的最新 NVIDIA 驱动程序,这似乎没问题:
$ nvidia-smi
Sat Jan 19 12:42:18 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.87 Driver Version: 390.87 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | …
Run Code Online (Sandbox Code Playgroud)