nvidia工作模式变化引起的问题
这两天遇到了一个奇怪的现象:
- docker run突然报错,跟显卡有关。
Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #1: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
nvidia-container-cli: initialization error: driver rpc error: timed out: unknown
Error: failed to start containers: cuda-vl
- 平时很快返回的nvidia-smi命令变得需要执行很久(没有报错)
- 用nvidia-container-cli -k -d /dev/tty info命令发现有个rpc service拉不起来
解决办法:开启显卡的持久模式:nvidia-smi -pm ENABLED。参考:https://blog.csdn.net/weixin_47464132/article/details/130340929
绕过的弯:
- 曾一度以为是防火墙导致rpc service不通。以为是之前动了iptables的规则,清理掉了docker相关的一些规则,里面应该有端口开放规则被一起清掉了,事实并非如此。
- 以为是驱动或系统内核出问题了,但重装、升级nvidia驱动、重装docker也然并卵。
困惑:本来正常工作的系统,是什么触发了显卡工作模式由on变成了Off?附上没有深入研究的官网关于Driver Persistence的描述