当我锁定屏幕时,CPU 使用率会达到 100%

当我锁定屏幕时,CPU 使用率会达到 100%

每当我锁定屏幕时,经过一段时间后,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 (..)这也是你的问题。那么你可以尝试以下方法:

解决方法:

  1. 打开 Catalyst 控制中心。
  2. 转到 3D > 更多设置。
  3. 将“等待垂直刷新”设置为“开启,除非应用程序指定”。如果这不起作用,那么还可以执行以下操作:
  4. 运行“ccsm”
  5. 在解决方法中,启用“重新绘制时强制全屏重绘(缓冲区交换)”。

如果是这种情况,请将该错误标记为“该错误影响我”。

答案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 受到了影响。

如果确实如此,请勾选“该错误会影响您”。

相关内容