Instruments工具包含了非常丰富的数据,可以自由选择查看各机型、各指标类目的具体性能数据,同样也正因为其展示的数据太过庞杂,可能让开发者不清楚该从如何入手去进行优化。
Xcode 13中Instruments中新增了Regressions模块,它会突出需要优先处理的性能问题,来简化工作流。
(温馨提示:本片内容来源自WWDC21:Diagnose Power and Performance regressions in your app)
想了解更多WWDC2021内容的小伙伴,可以阅读我以下文章,欢迎多多交流和指正
Regression
当一个APP相对与近期的版本,在性能或电量方面发生劣化,就称为回归(Regression)。
比如在上线一个新版本后,APP启动时间增加。
最新版本的启动时间,会与近期几个版本的启动时间的平均值进行比较,如果最新版本的启动时间更长,就会标记为回归。
Regression左侧栏汇总了哪些指标被回归,以及相较上几个版本劣化了多少。
Disk Writes
磁盘和内存还有CPU一样都是受限制的资源,不检查磁盘写入会损耗和伤害底层设备,同时还可能造成Hang(用户操作超过250ms未响应记作一个Hang)和UI卡顿,甚至缩短电池寿命。
- Insights
Organzier新增了一个叫做Insights区域的区域,来提供一些性能优化建议
File activities
Instruments中的File activities也可以用来debug储存相关的问题。