首页 文章

如何阅读Stock CPU Usage数据

提问于
浏览
111

在Ice Cream Sandwich上,Developer Options中的一个选项是“Show CPU Usage”,它在屏幕上添加了一个叠加层(见下面的截图) .

我的问题是,我如何阅读数据?我猜测包名是当前活动的过程,但背后的红色和绿色条是什么意思?还有什么是包装顶部的3个数字?

enter image description here

4 回答

  • 75

    这应该是Unix负载平均值 . Wikipedia有一篇很好的文章 .

    数字显示了CPU在不同时间间隔内的平均负载 . 从左到右:最后一分钟/最后五分钟/最后十五分钟

  • 0

    到目前为止,这是我能找到的最有用的信息来源 . 显然这些数字不会以%表示重新 balancer 负载平均值:http://forum.xda-developers.com/showthread.php?t=1495763

  • 9

    正如其他答案所指出的那样,在UNIX系统上,数字表示超过1/5/15分钟的 CPU load averages . 但是在Linux(以及Android)上,它代表的是不同的东西 .

    在一个可追溯到1993年(great in-depth article on the subject)的内核补丁之后,在Linux中,负载平均数不再严格代表 CPU 加载:因为计算不仅考虑CPU绑定进程,还考虑不间断等待状态的进程 - 最初的目标是以这种方式考虑I / O绑定进程,以表示更多的"system load"而不仅仅是CPU负载 . 问题是,自1993年以来,Linux内核中不可中断状态的使用已经增长,并且它通常不再代表I / O绑定进程 . 一些Linux开发人员使用不间断等待来轻松等待以避免在其实现中容纳信号,这进一步加剧了这个问题 . 因此,在Linux(和Android)中,我们可以看到不能客观地代表实际负载的偏差高负载平均数 . 有关于不合理的高负载平均值的Android用户报告与低CPU利用率形成鲜明对比 . 例如,当系统和CPU处于空闲状态时,我的旧Android手机(带有2个CPU内核)通常会显示~12的平均负载 . 因此,Linux(Android)中的平均负载数量并不是一个可靠的性能指标 .

  • 2

    High Performance Android Apps book(第157页):

    • 我们看到的相当于adb shell dumpsys cpuinfo命令

    • 数字显示CPU load超过1分钟,5分钟和15分钟(从左侧)

    • 颜色显示CPU在用户空间(绿色),内核(红色)和IO中断(蓝色)中花费的时间

相关问题