当我在Docker上运行“ nvidia-smi”时,它没有出现在“进程”部分中是正常现象吗?
我正在使用ubuntu上的Docker + GPU构建一个用于在ubuntu上进行深度学习的环境。
我认为这已经完成了,但是有一件事困扰着我。 在Ubuntu上执行“ nvidia-smi”时,我看到“进程”。
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.100 Driver Version: 440.100 CUDA Version: 10.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 166... Off | 00000000:01:00.0 On | N/A |
| 42% 37C P8 8W / 125W | 249MiB / 5936MiB | 3% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1127 G /usr/lib/xorg/Xorg 35MiB |
| 0 2006 G /usr/lib/xorg/Xorg 94MiB |
| 0 2202 G /usr/bin/gnome-shell 97MiB |
| 0 6565 G /usr/lib/firefox/firefox 2MiB |
| 0 7875 G /usr/lib/firefox/firefox 2MiB |
| 0 10070 G /usr/lib/firefox/firefox 2MiB |
+-----------------------------------------------------------------------------+
当我在Docker上执行“ nvidia-smi”时,看不到“进程”。
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.100 Driver Version: 440.100 CUDA Version: 10.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 166... Off | 00000000:01:00.0 On | N/A |
| 42% 36C P8 8W / 125W | 342MiB / 5936MiB | 2% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
+-----------------------------------------------------------------------------+
当我运行“ Jupyter Notebook”时,GPU似乎正在运行。
“这是一个规范,”我读了几年前写的一篇文章。
是否仍然没有显示Process是“规范”? 还是因为我没有正确安装?
把你的智慧借给我。 谢谢你!
答案 0 :(得分:0)
是的,由于驱动程序不知道PID名称空间,您将看不到。您可以特别使用Python仔细阅读线程和变通方法,
https://github.com/NVIDIA/nvidia-docker/issues/179#issuecomment-598059213
(我假设您未使用VM,因为在显示的日志中持久性模式为OFF)。
答案 1 :(得分:0)
谢谢你的建议。
在这一点上,我对GPU驱动程序似乎在Docker上正常工作感到放心。 在这种状态下,我会尝试一段时间。
我将检查您告诉我的“ github”站点。
非常感谢。那真的很有帮助。
(正如您所指出的,我没有使用VM。)
答案 2 :(得分:0)
一个 shim 驱动程序允许 in-docker nvidia-smi 显示正确的进程列表而无需修改任何内容。