优化

iOS APP启动优化--检测启动Page Faults次数

2020-05-19  本文已影响0人  你飞跃俊杰

我们都知道在App启动的时候Page Faults次数多了会影响启动速度;那么如何查看我们的app启动的时候Page Faults的次数以及它对app启动的耗时影响了。本文就一起来学习下使用Instruments的System Trace来检测

检测app首次打开的场景

4907887-f034ae46f502324f.png 4907887-86083af0f0b075ae.png

查看系统数据File Backed Page In就记录了启动的时候发生Page In的次数了

企业微信截图_724c3c5e-0189-4879-9abb-c54d82c41cbd.png

可以看到,app从后台回来Page In的次数很少

检测杀掉app再打开


1589890916955.png

测试了一两次发现跟从后台打开一样很少或者没有

检测杀掉app然后打开多个其他的app

打开app后立即杀掉app打开多个其他app(我打开了大概二十来个吧),来看看Page In的次数,发现有24来次


1589890916955.jpg

这里就有疑问了,app首次打开的时候Page Fault的次数很多,打开之后再打开的话就比较少,当打开多个其他app的时候,在打开检测的app发现也会有不少Page Faults

这是由于操作系统的机制,当应用杀掉了,他所访问的物理内存不是立马就清空;它所访问的物理内存,需要通过其他app申请开辟覆盖释放掉,可以通过多打开几个应用来验证发现Page Fault次数变多了的。

至此我们已经知道怎么去检测app的PageFault是的次数了。那么如果影响很大的话,就可以采用一些优化的方式[二进制重排、PGO]来提升app的启动时间了

上一篇 下一篇

猜你喜欢

热点阅读