鸿蒙NEXT开发实战往期必看文章:
一分钟了解”纯血版!鸿蒙HarmonyOS Next应用开发!
“非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线!(从零基础入门到精通)
HarmonyOS NEXT应用开发案例实践总结合(持续更新......)
HarmonyOS NEXT应用开发性能优化实践总结(持续更新......)
工具简介
SmartPerf Device是一款基于系统开发的性能功耗测试工具,操作简单易用。该工具可以监测性能、功耗相关指标,包括FPS、CPU、GPU、RAM、Temp等,通过量化的指标项了解应用、整机性能状况。在开发过程中,会使用到有屏或无屏设备,对此SmartPerf Device提供了两种方式:分别是Device-hap端和Device-daemon端。Device-hap端适用于有屏设备,支持可视化操作。测试时是通过悬浮窗的开始和暂停来实时展示性能指标数据,保存后可生成数据报告,在报告中可分析各指标数据详情。Device-daemon端支持shell命令行方式,同时适用于有屏和无屏设备。
指标说明
- CPU:每秒读取一次设备节点下CPU大中小核的频点和各核使用率,衡量应用占用CPU资源的情况,占用过多的CPU资源会导致芯片发烫。
- GPU:每秒读取一次设备节点下GPU的频点和负载信息,衡量应用占用GPU资源的情况,当GPU占用过多时,会导致性能下降,应用程序的运行速度变慢。
- FPS:应用界面每秒刷新次数,衡量应用画面的流畅度,FPS越高通常表示图像流畅度越好,用户体验也越好。
- POWER:每秒读取一次设备节点下的电流及电压信息。
- TEMP:每秒读取一次设备节点下电池温度、系统芯片温度等信息。
- RAM:每秒读取一次应用进程的实际物理内存,衡量应用的内存占比情况。
- snapshot:每2秒截取一张应用界面截图。
实现原理
下图展示了SmartPerf Device工具的主要功能组成。Device-hap端设置好采集项和采集参数后,启动应用,FPS、RAM、Trace等指标通过消息发送给Device-daemon端,Device-daemon端进行数据采集、持久化和数据分析,将生成的报告回传给Device-hap端,Device-hap端进行可视化显示。
约束与限制
-
Device-daemon端、Device-hap端在API 9版本开始预置使用。
-
Device-daemon端执行需连接硬件设备,Device-hap端需在有屏幕设备使用。
-
Device-daemon端执行前需完成hdc环境配置。
执行性能测试
SmartPerf Device-hap端
下面的操作步骤和界面内容以RK3568设备为例。
获取应用列表
点击设备上"SmartPerf Device-hap端"应用图标,进入"首页",点击"请选择一个应用",在应用列表页选择需要测试的应用。
设置采集参数
应用选择完成后回到开始测试页面,根据实际业务需要,配置"测试指标"。同时,可修改测试名称(测试名称包含测试的应用名称和测试时间,会呈现在报告列表中),是否抓取trace,选择是否开启截图。配置完成后,点击底部"开始测试"按钮。
悬浮窗控制采集
点击悬浮窗"start"开始采集,点击悬浮窗"计时器"(如下图中00:07)暂停采集。再次点击"计时器",继续开始采集。双击"计时器",实时展示采集数据。长按"计时器",结束采集。
整个过程中,可拖动悬浮框调整悬浮框位置。
查看报告
点击"报告",查看测试报告列表。点击项目,进入报告详情页,查看测试指标项详情。
SmartPerf Device-daemon端
基础采集命令参数
命令参数 | 必选 | 说明 |
---|---|---|
-N | 是 | 设置采集次数(一秒采集一次) |
-PKG | 否 | 设置包 |