每当我锁定屏幕时,经过一段时间后,CPU 和 CPU 风扇都会达到极限,而当我再次解锁屏幕时,它们就会恢复正常(如图所示psensor
)。
我怎样才能找出造成这一现象的进程?
我尝试过“top -S”,结果是这样的......
PID 用户 PR NI VIRT RES SHR S %CPU %MEM TIME+ 命令 2114 我 20 0 326米 104米 40米 R 16 2.6 66:50.03 compiz 1234 根 20 0 396 米 152 米 98 米 R 6 3.8 20:23.88 Xorg 2204 我 20 0 160米 38米 30米 S 4 1.0 0:33.35 yakuake 2446 我 20 0 206米 18米 12米 S 4 0.5 6:32.18 p传感器 2280 我 20 0 220米 18米 10米 S 2 0.5 5:01.60 统一面板 9138 我 20 0 154m 27m 15m S 2 0.7 0:03.63 插件继续 2282 我 20 0 65800 5272 3316 S 1 0.1 4:36.90 HUD 服务 2143 我 20 0 140m 11m 8352 S 1 0.3 2:50.16 指示器-m 9095 我 20 0 720米 253米 36米 S 1 6.4 0:26.34 火狐 2076 我 20 0 7168 3484 828 S 1 0.1 1:46.53 dbus 守护进程 2307 我 20 0 55000 5132 3632 S 1 0.1 2:01.55 指标-a 2557 我 20 0 86328 6028 4576 S 0 0.1 1:44.71 conky 6290 我 20 0 2836 1296 964 R 0 0.0 0:29.64 顶部 6291 我 20 0 2836 1188 884 S 0 0.0 0:29.49 顶部 1 根 20 0 3644 1984 1284 S 0 0.0 60:57.76 初始化
眼镜:
- 全新安装 Ubuntu 12.04
- 英特尔酷睿 i5
- 4 GB 内存
答案1
或许[fglrx] 屏幕关闭时 compiz 使用 100% 的 CPU (..)这也是你的问题。那么你可以尝试以下方法:
解决方法:
- 打开 Catalyst 控制中心。
- 转到 3D > 更多设置。
- 将“等待垂直刷新”设置为“开启,除非应用程序指定”。如果这不起作用,那么还可以执行以下操作:
- 运行“ccsm”
- 在解决方法中,启用“重新绘制时强制全屏重绘(缓冲区交换)”。
如果是这种情况,请将该错误标记为“该错误影响我”。
答案2
要找出屏幕锁定时哪些进程使用 CPU,请使用
top -b -i > watch.txt
然后锁定屏幕。等一会儿,然后查看文件。我发现,当我不在的时候, compiz 和 emacs 玩得很开心。
答案3
对于有“类似”问题的用户:区分 CPU 使用率是否上升很重要
- 当屏幕保护程序“激活”或
- 当锁屏激活时。
据我从评论中看到的那样,这很容易混淆(我第一次也混淆了)。
区分:
- 在终端运行“top”(或使用“系统监视器”GUI,可以看到过去的 CPU 使用情况),
- 按 Alt-Ctrl-L(立即锁定屏幕),
- 等待 3-4 秒(“系统监视器”需要 10-20 秒),
- 解锁计算机并
- 立即按“q”-从“top”退出(或仅检查“系统监视器”中最后几分钟的 CPU 使用情况)
如果 CPU 占用高,则屏幕保护程序无法执行任何操作,因为屏幕保护程序尚未激活。我的系统就是这种情况。
我创建了一个官方的 Ubuntu 错误,但意识到有一个与此相关的错误,因此我链接了:https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/1322751
我在那里写下了一个相当残酷的解决方法。如果您了解该脚本的作用并且它适合您,请使用它。
看起来相当不错的英特尔“Haswell”或较新的 CPU/GPU 受到了影响。
如果确实如此,请勾选“该错误会影响您”。