Jank的指标和bigJank的指标含义及影响

一、名词含义

Jank                卡顿次数
SmallJank           微小卡顿次数
BigJank             严重卡顿次数
Stutter             卡顿率

二、计算方法

同时满足两条件,则认为是一次卡顿Jank.

  • Display FrameTime(单帧渲染耗时)>前三帧平均耗时2倍
  • Display FrameTime(单帧渲染耗时)>两帧电影帧耗时 (1000ms/24*2≈83.33ms)

同时满足两条件,则认为是一次严重卡顿BigJank.

  • Display FrameTime >前三帧平均耗时2倍
  • Display FrameTime >三帧电影帧耗时(1000ms/24*3=125ms)------------电影帧24帧/s(每秒放映24帧)—人眼感知

三、卡顿率

PerfDog Stutter 定义:

  • 测试过程中,卡顿时长的占比。即Stutter(卡顿率)=卡顿时长/总时长

PerfDog Stutter计算思路:

  • 基于PerfDog Jank的基础上,一次Jank卡顿,会有一次卡顿时间Jank time。测试过程中可能有多次Jank卡顿,即有多次卡顿时间Jank time。测试总时长为Time。

卡顿率计算:

Stutter(卡顿率) = ∑Jank time / Time

总结说明:Jank为卡顿次数,Stutter为卡顿率,Jank和Stutter趋势有一致性,但并非完全线性,因为每次Jank卡顿严重性是不一样的。同时也说明了,没有Jank卡顿出现,自然也就卡顿率是0

四、延伸FPS帧率

  • 平均帧率1s平均画面刷新次数
  • 瞬时帧率:单帧率渲染耗时换算实时帧率

关系如下图:


Jank

五、导致不流畅原因

帧率过低
  • 电影真理(18-24),一般24帧。电影帧单帧率耗时:1000ms/24≈41.67ms.电影帧率是一个临界点。低于这个帧率,人眼基本能感觉画面不连续,即卡顿现象。
跳帧
  • 视觉预期帧率,用户潜意识里认为下帧与当前帧率刷新一致,即当前刷新帧率60,下帧也应该是60帧。跳帧即60帧下降30帧之类,扰乱用户视觉惯性

六、指标+场景

指标参考:

参数                指标                    备注
FPS                ≥24                   不应低于24帧
Jank               ≤0                    不应该大于0
BigJank            ≤0                    不应该大于0
Stutter            ≤0%                   不应该大于0%

场景(区分场景关注):

  • 备注:比如游戏中已预知的卡顿,如新UI弹出等造成卡顿,可认为是干扰,需要剔除,不应算在Jank,可通过web云上,框选右键删除干扰数据。
1.静态页面窗口
- 只需关注FPS,理论FPS数值为0,否则,说明有冗余刷新,容易引起手机发热和耗电
2.有滚动动画页面窗口
- 只需关注FPS,FPS处于合适数值即可,无需高刷.
3.快速滑动页面窗口
- 关注FPS、Jank及Stutter。一般滑动状态下,帧率越高越好,Jank越小越好。
4.播放视频页面窗口
- 关注FPS、Jank及Stutter,视频卡顿直接影响用户,视频一般帧率18-24帧,Jank=0。

以上参考PerfDog说明书

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容