OpenHarmony性能分析工具之Hiperf

系统教程10个月前发布 s666888
28 0 0

OpenHarmony性能分析工具之Hiperf

​想了解更多内容,请访问:​

​51CTO和华为官方合作共建的鸿蒙技术社区​

​https://ost.51cto.com​

一、hiperf使用

代码位置 https://gitee.com/openharmony/developtools_hiperf。

1.主命令参数

OpenHarmony性能分析工具之Hiperf

2.list 命令

列出设备上支持的所有事件名称。

事件名称用于 stat 和 record 的 -e 和 -g 参数。

Usage: hiperf list [event type name]

下面列出了设备支持的HW事件,并且会提示哪些事件此设备不支持。

./hiperf list hw

3.stat 命令

监听指定目标程序,周期性打印性能计数器的值。

Usage: hiperf stat [options] [command [command-args]]
Collect performance counter information of running [command].

下面展示了一个 stats 监听本进程 在 CPU 0 上 3 秒的性能计数器命令。

 ./hiperf stat -d 3 -c 0

4.record 命令

采样指定目标程序,并且将采样数据保存到指定的文件中(默认为perf.data)。

Usage: hiperf record [options] [command [command-args]]
Collect performance sampling information of running [command].

对全系统所有进程采样3秒,并且显示详细的信息。

./hiperf record -d 3 -a --verbose

二、hiperf使用示例

1.hiperf命令

hiperf record -d 10 -a 

默认生成perf.data文件路径:

/data/local/tmp

2.hdc导出perf.data文件

hdc file recv /data/local/tmp/perf.data  %cd%

3.生成符号表

(1)将lib库:

Z:\OpenHarmony\master\out\rk3568\mingw_x86_64\developtools\hiperf
libhiperf_report.dll
libhiperf_report.lib

拷贝到脚本recv_binary_cache.py的当前目录的bin\windows\x86_64目录下。

(2) 将hdc_std.exe文件添加到PATH路径下。

(3)板子连接电脑,hdc_std shell可以正常使用。

(4) perf.data文件在 recv_binary_cache.py脚本的目录下。

(5)收集perf.data 里面记录的相关文件和库的符号表。

python recv_binary_cache.py -l Z:\OpenHarmony\master\out\rk3568\lib.unstripped  Z:\OpenHarmony\master\out\rk3568\exe.unstripped

路径根据实际使用修改。

4.生成html文件

产生HTML文件,默认的文件名是 hiperf_report.html。

python make_report.py

5.html文件

Chart Statistics界面。

OpenHarmony性能分析工具之Hiperf

Sample Table界面。

OpenHarmony性能分析工具之Hiperf

Flame Graph界面。

OpenHarmony性能分析工具之Hiperf

​想了解更多内容,请访问:​

​51CTO和华为官方合作共建的鸿蒙技术社区​

​https://ost.51cto.com​

OpenHarmony性能分析工具之Hiperf

© 版权声明

相关文章