容器内执行nvidia-smi报错提示Failed to initialize NVML

使用GPU的容器运行了一个训练任务,一段时间以后查看训练任务失败,进POD容器内执行nvidia-smi返回"FailedtoinitializeNVML:UnknownError"。目前该问题是一个已知问题,是由于在docker环境中daemon.json文件中配置了"exec-opts": ["native.cgroupdriver=systemd"]同时通过systemctldaemon-reload等命令守护进程重载命令,导致容器化的GPU工作负载可能会突然失去对G...

阅读全文

python-daemon实现后台守护进程

我们可以使用很多种方式让python脚本再后台运行,其中最简单的方式是使用linux下的nohup命令1.nohup命令nohup python test.py &这样test.py脚本就脱离了当前终端的控制,我们如果可以使用ps命令查找进程并关闭2.tmux终端tmux是一个提供后台终端窗口的会话服务,我们只需要开启tmux,然后再tmux窗口中运行脚本,然后退出tmux即可3.python-daemon模块这个模块可以使我们的脚本变为后台守护进程,这个模块需要安装pip install pyt...

阅读全文

Docker的配置文件daemon.json详解

docker安装后默认没有daemon.json这个配置文件,需要进行手动创建。配置文件的默认路径:/etc/docker/daemon.json一般情况,配置文件daemon.json中配置的项目参数,在启动参数中同样适用,有些可能不一样(具体可以查看官方文档),但需要注意的一点,配置文件中如果已经有某个配置项,则无法在启动参数中增加,会出现冲突的错误。我们可以通过此地址https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file查看da...

阅读全文