问题
正常情况下,当xorg
和compiz
在我的 gpu 中运行时,我可以Suspend
平静地运行。但是如果我运行一些激烈的(90%的 GPU 正在使用中)训练(通过 jupyter)与相关pytorch
,然后在进程结束后暂停,它拒绝睡眠/唤醒。
我确信 GPU 已满或未空是导致此问题的原因。我不知道为什么可能与 GPU 相关的“某个进程”没有暂停。当我运行jupyter
并运行1+1
(或运行一个简单的进程)时Suspend
,也没有问题。
问题
Kernlog 没有显示任何“可疑”信息。我尝试了很多在线补救措施。现在还是无济于事。
我如何确定发生了什么?有什么想法吗?
其他症状
它有点休眠了,但当我按下某个键时,我仍然能听到笔记本电脑发出一些声音(听起来好像它正在启动)。然后屏幕一片空白。有时我可以进入 TTY,但无法输入任何内容。
我的系统
- Ubuntu 16.04
- Nvidia 1050 GeForce
- 宏碁 nitro 5 8gb 内存
我做了哪些尝试来纠正这个问题?
花了整整五天的时间去理解、搜索和重新安装等等...现在走进了死胡同。
检查了kern 日志(pastebin 链接)但没有发现任何“可疑”之处。(当
02:08
我开始睡觉时,10:21
我按下了硬重置)。以下是一小段摘录:
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.6443] manager: sleep requested (sleeping: no enabled: yes)
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.6443] manager: sleeping...
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.6447] manager: NetworkManager state is now ASLEEP
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.6453] device (wlp2s0): state change: activated -> deactivating (reason 'sleeping') [100 110 37]
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.8169] device (wlp2s0): state change: deactivating -> disconnected (reason 'sleeping') [110 30 37]
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.8356] dhcp4 (wlp2s0): canceled DHCP transaction, DHCP client pid 8328
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.8356] dhcp4 (wlp2s0): state changed bound -> done
Oct 2 02:08:06 eghx-nitro NetworkManager[8152]: <info> [1601597286.8363] dns-mgr: Writing DNS information to /sbin/resolvconf
Oct 2 02:08:06 eghx-nitro kernel: [24100.153393] wlp2s0: deauthenticating from e8:cc:18:41:3c:15 by local choice (Reason: 3=DEAUTH_LEAVING)
Oct 2 02:08:07 eghx-nitro NetworkManager[8152]: <warn> [1601597287.0509] sup-iface[0xb4a6f0,wlp2s0]: connection disconnected (reason -3)
Oct 2 02:08:07 eghx-nitro NetworkManager[8152]: <info> [1601597287.0511] device (wlp2s0): supplicant interface state: completed -> disconnected
Oct 2 02:08:07 eghx-nitro NetworkManager[8152]: <info> [1601597287.0525] device (wlp2s0): state change: disconnected -> unmanaged (reason 'sleeping') [30 10 37]
Oct 2 02:08:08 eghx-nitro kernel: [24101.983885] PM: suspend entry (deep)
Oct 2 02:08:09 eghx-nitro kernel: [24101.983888] PM: Syncing filesystems ... done.
Oct 2 10:21:32 eghx-nitro kernel: [24103.953554] Freezing user space
processes ... (elapsed 0.002 seconds) done.
基于Nvidia 论坛将以下内容添加到 grub 并更新。
GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_rev_override=1 acpi_osi=Linux scsi_mod.use_blk_mq=1 nouveau.modeset=0 nouveau.runpm=0 mem_sleep_default=deep"
在 iniramfs-tools/modules 中添加了以下内容并更新。
nvidia nvidia_modeset nvidia_uvm nvidia_drm
没有更改内核,因为没有证据表明需要这样做。人们改成了 4.17。我的内核目前是 4.15。
盲目尝试:尝试不同的(暂停)
systemctl suspend pm-suspend
尝试将驱动程序从 430 降级到 384,并在 处进行更改
additional drivers
。这没有用,因为它无法与pytorch=1.6.0
nvdia-430
按照要求完全移除并重新安装这里:
purge
,add-apt-repository ppa:graphics-drivers/ppa
,update
和autoinstall
。这导致死机黑屏。用 恢复
noveau.modeset=0
。不知何故 GPU 不再工作了。此时完全重新安装在登录屏幕之前,通过
xserver
tty终端unity
。lightdm
nvidia-430
这会将系统恢复到以前的状态,即
suspend
当 GPU 满载时系统会挂起。