Perfetto基本使用 - 分析手机中CPU的状况
通过之前的分享 性能分析工具 之 Perfetto基本使用 文章,了解了基本的使用方法,今天就进入正题,着手分析性能中最重要的部分 - CPU。
但是有人说了可以使用top命令来查看,top命令也是可以的,但是它会以固定频率刷新,不能像Perfetto记录很细节,以及使用SQL语句统计。 Perfetto中可以看到每个时刻以及进程的CPU 使用情况,通过分析CPU用量情况,可以有效了解该时刻的性能状态。
接下来,我会将top命令和perfetto两个方式查看CPU介绍一下。
top命令
以固定频率刷新显示系统中各个进程的资源占用情况。

讲几个重要的参数:
800%cpu就是表示8个核;
Perfetto分析CPU

分析CPU情况,我们也需要有一种“控制变量法”的思想,将其他干扰因素保持不变,因为相同的代码在不同的频率下执行时间也是不一样的,因此需要定频定核之后再分析CPU状况。
CPU使用状况
可以同时圈住所需的部分的CPU和slice,就可以显示出该区域的状态。

在下方的Slices中可以看到圈住区域的trace,Wall duration就是CPU 的时间,这个是按降序排列,最前面是该区域耗时最多的线程。


Wall duration / Selected range = CPU 使用情况
如图中 3049.32 / 427.81 = 712.77%
712.77% 表示8个核中使用了7.13个核,基本所有的核都在使用,空闲状态很少,idle值很小。这个线程占用CPU 很高。
CPU使用频率
如果查看CPU的频率需要打开“CPU frequency and idle states”选项。

以still capture线程期间的频率进行分析。


浙公网安备 33010602011771号