0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

解决应用性能问题的策略

HarmonyOS开发者 来源:HarmonyOS开发者技术 2025-04-24 11:42 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

33c741aa-1d0a-11f0-9310-92fbcf53809c.png

性能调优贯穿于鸿蒙应用开发的整个生命周期中,开发前有性能最佳指南等赋能套件让你快速上手学习,开发过程中有性能工具开发套件覆盖应用开发各阶段,应用开发完成上架后有专业的性能测试工具检查测试应用性能指标。本文重点介绍应用开发过程中使用性能工具与性能优化文章定位分析性能问题流程,目前DevEco Studio主要集成了四种性能工具,在不同的开发阶段各有侧重,主要分为性能问题检测类工具和性能问题分析类工具。

33d67594-1d0a-11f0-9310-92fbcf53809c.png

性能工具集定位分析性能问题流程

体检工具和代码检查工具联动:针对共性问题触发代码白盒检查,通过性能规则精确发现开发者开发过程中引入的性能问题,并给出具体的修改建议和范式。

体检工具和调试&调优工具联动:部分不能通过具体规则拦截的性能问题,跳转到调试&调优工具进行分析,分析并行化、组件耗时、页面层次等具体问题。

33e08d40-1d0a-11f0-9310-92fbcf53809c.png

1. 检测发现性能问题,在代码编辑阶段可以使用Code Linter代码检查工具对代码进行单个文件或者文件夹进行静态代码扫描;同时在应用功能开发完成后,在运行态可以使用应用体检工具检测应用运行过程中的性能问题;

2. 以应用体检工具为主,对于动态运行检测发现的性能问题,提供三种修复问题的路径:

根据跳转的官网性能指导来修改发现的性能问题;

根据检测结果的问题页面,触发该页面源文件的Code Linter静态性能检查,根据静态检查结果跳转到官方最佳性能实践指导修复性能问题;

根据检测结果的过程性能文件,跳转到DevEco Profiler导入该文件深入分析,定位发现性能瓶颈点;

解决应用性能问题的策略

构建以体检工具为主,调优工具为辅的性能工具集,通过应用体检发现问题并给出修复建议。

滑动卡顿丢帧和时延类问题

1. 有检查规则覆盖的问题

33ee72e8-1d0a-11f0-9310-92fbcf53809c.png

应用体检工具的Benchmark体检套餐目前集成了通用性能检测项和最佳性能实践检测规则,对于性能规则能覆盖的滑动卡顿丢帧和时延类性能问题,这类问题的定位思路如下:

打开应用体检工具,准备好调测软件包,选择Benchmark体检套餐,自定义选择性能检查测试项,点击开始执行应用体检;

执行检测过程分为自动检测和手动检测,自动检测完成后会提示用户手动操作应用。应用体检工具会自动分析发现应用执行过程中的性能问题,将检测结果呈现给用户,用户重点关注未通过项;

查看未通过项详情,对于性能规则能覆盖的性能问题,可首先查看性能指导尝试修复问题,也可触发问题页面源码文件的Code Linter静态性能检查,根据静态检测结果呈现的具体错误和最佳性能实践修复问题。

2. 无检查规则覆盖的问题

33f78d2e-1d0a-11f0-9310-92fbcf53809c.png

对于性能规则不能覆盖的滑动卡顿丢帧和时延类性能问题,这类问题的定位思路如下:

打开应用体检工具,准备好调测软件包,选择Benchmark体检套餐,自定义选择性能检查测试项,点击开始执行应用体检;

执行检测过程分为自动检测和手动检测,自动检测完成后会提示用户手动操作应用。应用体检工具会自动分析发现应用执行过程中的性能问题,将检测结果呈现给用户,用户重点关注未通过项;

查看未通过项详情,对于性能规则不能覆盖的性能问题,可将检测过程中生成的trace文件或者perfdata文件导入到DevEco Profiler工具,深入分析代码的性能瓶颈点,修复性能问题。

内存类问题

34069e5e-1d0a-11f0-9310-92fbcf53809c.png

对于应用的内存类问题定位思路如下:

1. 打开应用体检工具,准备好调测软件包,选择Benchmark体检套餐,自定义选择内存相关性能检测项,点击开始执行应用体检;

2. 执行检测过程分为自动检测和手动检测,自动检测完成后会提示用户手动操作应用。应用体检工具会自动分析发现应用执行过程中的性能问题,将检测结果呈现给用户,用户重点关注未通过项;

3. 查看未通过项详情,可将检测过程中生成的snapshot文件导入到DevEco Profiler工具,深入分析代码的性能瓶颈点,修复内存问题。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4941

    浏览量

    73149
  • 性能
    +关注

    关注

    0

    文章

    276

    浏览量

    19585
  • 应用开发
    +关注

    关注

    0

    文章

    63

    浏览量

    9893

原文标题:性能最佳实践导读

文章出处:【微信号:HarmonyOS_Dev,微信公众号:HarmonyOS开发者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    鸿蒙5开发宝藏案例分享---应用性能优化指南

    鸿蒙性能优化实战指南:让你的应用飞起来 ? 大家好!今天咱们聊聊鸿蒙(HarmonyOS)应用性能优化的实战技巧。结合官方文档和最佳实践,我整理了8大核心优化方向,附带代码案例和深度解析,帮你告别卡
    发表于 06-12 17:17

    评估通过Python快速开发异构处理器FPGA应用性能(PYNQ评测)

    本帖最后由 lee_st 于 2018-6-21 02:18 编辑 评估通过Python快速开发异构处理器FPGA应用性能(PYNQ评测)
    发表于 06-19 08:36

    具有特殊应用性能的模拟开关有什么优点

    随着市场对功能丰富的手机需求越来越强劲,具有特殊应用性能的模拟开关得到了最终设计的持续青睐。此举不仅能降低材料成本(BOM),还有助于提升设计性能并满足对产品上市时间的要求。本文将通过若干实际用例
    发表于 07-16 06:21

    请问有什么策略可以提高芯片的性能

    请问有什么策略可以提高芯片的性能
    发表于 06-23 13:08

    性能永磁交流伺服电机系统控制策略资料分享

    永磁交流伺服电机模型是强耦合,时变的非线性系统。优良的控制策略不但可以弥补硬件设计方面的不足,通过控制策略可以进一步提高系统的性能,不但使系统具有快速的动态响应和高的动、静态精度,而且系统要对参数
    发表于 06-28 06:44

    GaN功率集成电路:器件集成带来应用性能

    GaN功率半导体器件集成提供应用性能
    发表于 06-21 13:20

    新IGBT技术提高应用性能

    新IGBT技术提高应用性能 在日益增长的变频器市场,许多厂商提供性能和尺寸各异的变换器类型。这正是以低损耗和高开关频率而著称的新IGBT技术施展的舞台。在62毫米
    发表于 11-07 10:41 1027次阅读
    新IGBT技术提高<b class='flag-5'>应用性能</b>

    常见流媒体服务器应用性能比较

    常见流媒体服务器应用性能比较 1.1 nCUBE4   nCUBE系统具有较高的性能,单个节点(MediaHUB)的网络输出性能为172个3Mb/s
    发表于 01-13 11:18 5893次阅读

    恒忆创新多位配置串口NOR闪存加速嵌入式应用性能

    恒忆创新多位配置串口NOR闪存加速嵌入式应用性能 恒忆(Numonyx)在IIC深圳站宣布推出业界首款 65nm 多位输入输出(1 位、2 位和 4 位)SPI闪存系列产品--Forté N25Q,该产
    发表于 03-08 10:15 1072次阅读

    怎样通过DPDK GRO和GSO来提高网络的应用性能

    目前,有大量的网络应用在处理数据包的时候只需要处理数据包头,而不会操作数据负载部分,例如防火墙、TCP/IP协议栈和软件交换机。对这类网络应用而言, 包头处理产生的开销(称为“per-packet overhead”)占了整体开销的大部分。因此,如何减少包头处理开销是优化这类应用性能的关键。
    发表于 08-13 16:19 5040次阅读
    怎样通过DPDK GRO和GSO来提高网络的<b class='flag-5'>应用性能</b>?

    HarmonyOS下如何测试应用性能

    ?HarmonyOS下如何测试应用性能?多设备协同下的应用如何测试? 设备级测试面临问题:设备级整机的DFX怎么测试?硬件/驱动与系统的协同如何测试?设备与设备间的协同如何测试? 为了解决上述问题,我们打造一款全新的HarmonyOS测试解决方案产品——De
    的头像 发表于 11-06 09:36 2846次阅读

    A-Ops数据库场景在线应用性能诊断案例

    具体的故障传播关系如下图所示,可见应用性能劣化是因为磁盘写响应异常以及block层request时延异常,进一步的磁盘类异常是由于故障注入工具chaos(进程id:3941335)导致。
    的头像 发表于 03-16 13:47 1329次阅读

    使用32Gb/S光纤通道实现更快的应用性能

    电子发烧友网站提供《使用32Gb/S光纤通道实现更快的应用性能.pdf》资料免费下载
    发表于 08-29 11:00 0次下载
    使用32Gb/S光纤通道实现更快的<b class='flag-5'>应用性能</b>

    使用Arthas火焰图工具的Java应用性能分析和优化经验

    分享作者在使用Arthas火焰图工具进行Java应用性能分析和优化的经验。
    的头像 发表于 10-28 09:27 2013次阅读
    使用Arthas火焰图工具的Java<b class='flag-5'>应用性能</b>分析和优化经验

    如何进行动态策略性能测试?

    动态策略性能测试核心是 “ 量化关键指标、模拟真实负载、验证极限能力 ”,聚焦 “响应速度、功耗控制、实时性、资源占用” 四大核心维度,通过精准工具测量和场景模拟,确保策略在不同工况下性能
    的头像 发表于 11-13 17:55 1995次阅读
    如何进行动态<b class='flag-5'>策略</b>的<b class='flag-5'>性能</b>测试?