OpenHarmony南向开发:SmartPerf-Device使用说明

简介

SmartPerf 端是一款基于 OpenHarmony 系统开发的性能功耗测试工具,操作简单易用,可提供包括性能、功耗的关键 KPI 指标,给出具体指标的测试值,包括采集设备的 FPS、CPU、GPU、Ftrace 等指标数据;

目前 SmartPerf 工具提供了两种使用方式,分别为 hap 应用可视化操作方式(SmartPerf-Device)和 shell 命令行方式(SmartPerf-Daemon),其中 SmartPerf-Device 支持可视化操作、悬浮窗控制暂停,悬浮窗实时展示数据,SmartPerf-Daemon 主要适用于无屏设备、性能较差的设备,对 3568 等设备同样支持。

实现原理

SmartPerf 工具主要包括 SmartPerf-Device、SmartPerf-Daemon 两个部分,其中 Device 采集的 FPS、RAM、Trace 等指标需要通过发送消息给 Daemon 端去采集数据,然后接收 Daemon 回传的数据展示,同时 Daemon 端也提供了 shell 命令的方式单独执行采集

约束与限制

1.SmartPerf-Device、SmartPerf-Daemon 在 3.2 系统版本后开始预制使用。

2.其中 SmartPerf-Device 的使用必须是具备屏幕的设备。

环境准备

SmartPerf-Daemon 执行需要 PC 连接 OpenHarmony 设备,如 RK3568 开发板等。

执行性能测试

SmartPerf-Device 应用可视化使用示例

以下 SmartPerf-Device 应用内截图以 RK3568 设备为例。

1.应用采集配置。

启动 SmartPerf-Device 进入首页,选择测试应用、测试指标项,点击"开始测试",拉起测试应用。

2.悬浮窗控制采集。

点击悬浮窗"start"开始采集,单击悬浮窗"计时器"暂停采集,再次单击继续采集双击计时器,实时展示采集数据,可拖动悬浮框更改悬浮框位置,长按"计时器",结束采集。

3.查看报告。

点击"报告",查看测试报告列表,点击"报告列表",查看测试指标项详情。

SmartPerf-Daemon 命令行使用示例

1.进入 shell, 执行查看帮助命令。

复制代码
:# SP_daemon --help
​

2.执行采集命令。

复制代码
:# SP_daemon -N 2 -PKG com.ohos.contacts -c -g -t -p -r
​

采集命令使用示例解析

命令 功能 是否必选
-N 设置采集次数
-PKG 设置包名
-PID 设置进程 pid(对于 ram 适用)
-c 是否采集 cpu
-g 是否采集 gpu
-f 是否采集 fps
-t 是否采集温度
-p 是否采集电流
-r 是否采集内存

测试结果默认输出路径如下

复制代码
报告存放路径:/data/local/tmp/data.csv
​

data.csv 数据名描述

被测数据项 含义 备注
cpuFrequ CPU 的频率 单位 Hz
cpuLoad CPU 的负载占比 %
currentNow 当前读到的电流值 单位 mA
fps 屏幕刷新帧率 单位 fps
fpsJitters 每一帧绘制间隔 单位 ns
gpuFrequ GPU 的频率 单位 Hz
gpuLoad GPU 的负载占比 %
shell_front 前壳温度 单位 °C
shell_frame 边框温度 单位 °C
shell_back 后壳温度 单位 °C
soc_thermal SOC 温度 单位 °C
system_h 系统温度 单位 °C
timeStamp 当前时间戳 对应采集时间
voltageNow 当前读到的电压值 单位 μV(微伏)

最后

小编在之前的鸿蒙系统扫盲中,有很多朋友给我留言,不同的角度的问了一些问题,我明显感觉到一点,那就是许多人参与鸿蒙开发,但是又不知道从哪里下手,因为资料太多,太杂,教授的人也多,无从选择。有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(HarmonyOS NEXT)资料用来跟着学习是非常有必要的。

为了确保高效学习,建议规划清晰的学习路线,涵盖以下关键阶段:

希望这一份鸿蒙学习资料能够给大家带来帮助~


鸿蒙(HarmonyOS NEXT)最新学习路线

该路线图包含基础技能、就业必备技能、多媒体技术、六大电商APP、进阶高级技能、实战就业级设备开发,不仅补充了华为官网未涉及的解决方案

路线图适合人群:

IT开发人员: 想要拓展职业边界
零基础小白: 鸿蒙爱好者,希望从0到1学习,增加一项技能。
**技术提升/进阶跳槽:**发展瓶颈期,提升职场竞争力,快速掌握鸿蒙技术

2.视频学习资料+学习PDF文档

(鸿蒙语法ArkTS、TypeScript、ArkUI教程......)

纯血版鸿蒙全套学习资料(面试、文档、全套视频等)

鸿蒙APP开发必备

​​

总结

参与鸿蒙开发,你要先认清适合你的方向,如果是想从事鸿蒙应用开发方向的话,可以参考本文的学习路径,简单来说就是:为了确保高效学习,建议规划清晰的学习路线

相关推荐
qq_386322692 小时前
华为网路设备学习-21 IGP路由专题-路由过滤(filter-policy)
前端·网络·学习
Robot2512 小时前
「华为」人形机器人赛道投资首秀!
大数据·人工智能·科技·microsoft·华为·机器人
鸿蒙布道师2 小时前
鸿蒙NEXT开发动画案例5
android·ios·华为·harmonyos·鸿蒙系统·arkui·huawei
孙克旭_6 小时前
PXE_Kickstart_无人值守自动化安装系统
linux·运维·自动化
皓月盈江7 小时前
Linux电脑本机使用小皮面板集成环境开发调试WEB项目
linux·php·web开发·phpstudy·小皮面板·集成环境·www.xp.cn
深井冰水7 小时前
mac M2能安装的虚拟机和linux系统系统
linux·macos
leoufung7 小时前
内核内存锁定机制与用户空间内存锁定的交互分析
linux·kernel
蓝婷儿8 小时前
前端面试每日三题 - Day 32
前端·面试·职场和发展
星空寻流年9 小时前
CSS3(BFC)
前端·microsoft·css3
九月TTS9 小时前
开源分享:TTS-Web-Vue系列:Vue3实现固定顶部与吸顶模式组件
前端·vue.js·开源