Docker container中的nvidia-smi无法看到其他地方启动的程序
当在docker container里面运行GPU程序的时候,通过 nvidia-smi
只能看到当前 container里面启动的程序,而无法看到所有运行在GPU上的程序,这个原因是因为nvidia-smi
这个命令通过扫描持有驱动的PID来查找对应的程序。
因此在docker container里面默认看不到别的地方启动的PID,而实际上实际上看不到才是正统的,因为docker container存在的价值就是进行多租户隔离,自己管自己,如果能看到别人,还能干掉别人的,实际上已经破坏多租户的概念了,这个隔离意义就不大,单纯就是个程序环境隔离了。
如果非要看到,也可以通过-pid=host
把物理机器的透过去,就能看到,不过这样来说,基本上就破坏了隔离性。
https://github.com/NVIDIA/nvidia-docker/issues/179
扫码手机观看或分享: