讨论广场 问答详情
冷启动加载完成时延(离手帧为起始点)
HarmonyOS码上奇行 2024-06-14 10:47:20
12 评论 分享

问题现象

镜像版本:ALN-AL00 204.1.0.72(SP2DEVC00E72R4P1)

应用版本:1.0.0

具体场景:

测试结果:

使用工具

DevEco Studio Profiler,smartperf

12 评论 分享
写回答
全部评论(1)

定位过程

冷启动完成耗时3.7s,01:699(离手帧) ~ 05:350(页面加载完成),S标1600ms,需要优化2.1s。

通过trace中显示的冷启动过程中以下6个重要时间点可以看出:启动耗时主要发生在应用首次送显starticon消失后到应用第二次送显的过程中。

1 离手帧起始点 01:699

2 starticon铺满全屏 02:359

3 应用首次送显 02:254

4 应用送显后直到starticon消失 02:488

5 首页加载完成 05:350

6 应用第二次送显 05:279

通过trace可以看出,应用首次送显starticon消失后到应用第二次送显总计耗时2.8s,在这个时间段内应用线程休眠了1s 833ms,而且应用线程中还做了大量串行的NAPI 队列任务,导致阻塞耗时。

 

结论:分析trace发现,应用冷启动过程中应用线程休眠了1s并且做了大量串行的NAPI 队列任务导致阻塞耗时,需要应用侧分析优化。

2024-06-14 10:48:49