Cpuprofiler抓取和展示说明

Cpuprofiler模板帮助ArkTs开发和测试分析虚拟机层执行开销大问题,提供Ts层耗时长函数和阶段。

Cpuprofiler的抓取

Cpuprofiler的抓取配置参数

打开Start Ark Ts Record总开关下面的Start cpu profiler开关抓取Cpuprofiler数据。
GitHub Logo

Cpuprofiler展示说明

将抓取的Cpuprofiler文件导入到SmartPerf中,查看Ts层耗时长的函数和阶段。
GitHub Logo

Cpuprofiler的泳道图悬浮显示

鼠标放到泳道图的Slice上会有悬浮框显示。
GitHub Logo

Cpuprofiler泳道图的点选和框选功能

点选或者框选泳道图上函数名的Slice,会显示Js Profiler Statistics,Js Profiler CallTree,Js Profiler BottomUp的Tab页信息。
Js Profiler Statistics的Tab页显示数据的维度信息,以饼图和Table表的方式展示,如下图:
GitHub Logo
GitHub Logo

Js Profiler CallTree的Tab页把name,url,depth,parent相同的函数合并,构建成一个top down的树结构,以树形表格的形式显示,表格中显示函数调用关系,如下图:
GitHub Logo
GitHub Logo

Js Profiler BottomUp的Tab页把name,url,depth,parent相同的函数合并,构建成一个bottom up的树结构,以树形表格的形式显示,只不过作为根节点的是被调用者,表格中显示函数被调用关系,如下图:
GitHub Logo
GitHub Logo

Cpuprofiler的Heaviest Stack功能

Js Profiler CallTree的Tab页的Heaviest Stack表格显示的是选中的函数的完整的调用栈。
GitHub Logo
Js Profiler BottomUp的Tab页的Heaviest Stack表格显示的是选中的函数的完整的逆序调用栈。
GitHub Logo