

Android:
CPU Usage:传统CPU利用率,也叫未规范化CPU利用率
计算方法:当前时刻CPU频率下,CPU Usage = CPU执行时间/CPU总时间。
备注:一般Android Studuio或Adb等获取的CPU利用率都是未规范化CPU利用率。
CPU Usage(Normalized):规范化CPU利用率
由于移动设备CPU频率时刻变化,用传统CPU利用率计算方法,假定在低频率时刻计算出CPU利用率=30%,和在CPU高频时刻计算出CPU利用率=30%。同样都是30%但性能消耗是完全不样的,明显高频消耗更高。传统CPU利用率已无法真实反映性能消耗。
所以我们需要一种规范化(可量化)的统计方式。将频率因素考虑进去。
CPU Usage(Normalized)= (CPU执行时间/CPU总时间) * (当前时刻所有CPU频率之和/所有CPU频率最大值之和)。
PerfDog两种统计方式都有。CPU Usage默认为未规范化CPU利用率。建议使用规范化CPU利用率作为衡量性能指标。
备注:极少部分手机暂时无法测试规范化CPU利用率,请重启下尝试。
iOS:
PerfDog统计的是传统CPU利用率,CPU Usage默认为未规范化CPU利用率。由于iOS平台,频率变化一般是在电池电量极低,锁屏等极端情况下才出现。所以规范化没有很大意义。