9 月 13 日,2025 Inclusion・外滩大会「开源嘉年华」正在限量报名中! 了解详情
写点什么

CodeGenie 的 AI 辅助调优让你问题定位效率大幅提升

  • 2025-09-05
    北京
  • 本文字数:2183 字

    阅读完需:约 7 分钟

大小:1.12M时长:06:31

在鸿蒙应用开发过程中,性能优化一直是开发者面临的核心挑战之一。传统性能调优高度依赖开发者的经验积累,要求开发者不仅要精通 DevEco Studio Profiler 等工具的使用,还需深入理解鸿蒙系统架构、ArkUI 框架原理及性能优化方法论。这种高门槛导致许多开发者,尤其是初学者,在面对性能问题时往往无从下手,只能通过反复查阅手册与典型案例来寻找解决方案,效率较为低下。


智慧调优是什么? 


随着 AI 技术的快速发展,华为在 DevEco Studio 6.0.0 Beta 版本上正式推出 CodeGenie 智慧调优功能,基于鸿蒙性能专家知识库,重新定义性能调优的工作方式,让开发者通过自然语言交互即可完成复杂性能问题的分析与定位,大幅降低调优门槛,提升开发效率,将性能优化从“专家技能”变为“自然对话”,如同身边多了一位资深鸿蒙专家。


 

智慧调优能做什么?


在鸿蒙应用性能优化的实践中,开发者常常面临两类核心挑战:冷启动和卡顿丢帧问题:这类问题的诊断与优化需要扎实的鸿蒙原理知识。开发者必须熟悉鸿蒙系统架构、ArkUI 框架原理及性能优化方法论,并能精准排查调优数据,判断异常。针对此,智慧调优配备了强大的专业工具库和案例库,助力 AI 在海量运行数据中快速聚焦关键指标与异常模式,明确诊断问题根源,为开发者提供精准的问题解释与优化建议。内存分析场景:相比之下,内存问题往往隐藏得更深,需要开发者熟练掌握各种常见内存分配方法,能在大量类型、对象中精准地找到关键引用链节点。因此,智慧调优为该场景设计了较为灵活的工具调用机制,支持 AI 模型查看内存分配详情、追踪对象引用、分析泄露路径,利用 AI 强大的语义分析能力进行综合推理,提供优化建议。


智慧调优典型使用场景


场景一:冷启动 & 卡顿丢帧——资深专家就在身边


传统人工排高度依赖个人经验且耗时长,因为:

1)日志分散在 Frame、ArkUI Component、Process 等 10 多个模块

2)一个丢帧可能牵扯到 Ability 生命周期、线程调度、组件复用等多种维度


智慧调优的解法:工具链+知识库“双引擎”

1)工具链

智慧调优把鸿蒙调优数据接口封装成 20 多个原子工具:

get_overtime_stage:一键抓取 Ability 冷启动各阶段耗时;

get_stuck_frames:自动比对 VSync 周期,定位丢帧帧号;

query_buildItem_in_frame_detail:检测自定义组件创建次数。

2)知识库

将华为官方文档、经典案例档案化、标准化,构建鸿蒙性能知识库。

大模型在推理时,可实时参考相似案例,把关键数据、信息直接高亮。


实战效果

同一列表内的列表项组件复用是典型的应用开发场景,如果开发者未合理使用组件复用,会带来大量创建销毁自定义组件操作的消耗,导致渲染时间过长,列表滑动时卡顿丢帧,如下图是未合理使用组件复用时调优泳道图:


 

通过智慧调优,可以快速分析并定位泳道中的异常数据,给出卡顿丢帧根因和优化建议


 

操作方式与步骤

智慧调优当前支持引导录制新调优任务和直接分析已有调优数据文件两种开启方式,开发者可通过点击 Create Session 录制新调优任务或点击 CodeGenie 图标/Open File 直接分析已有调优数据文件:




开启分析任务后,AI 会分阶段进行性能问题定位与分析。以卡顿丢帧场景为例, AI 首先会进行超时帧定位,定位完成后,选中超时帧,点击 Analyze,深入挖掘当前帧具体问题场景,找到影响性能的可能原因。



场景二:内存分析——让问题自动浮出水面


内存问题定位痛点

1)鸿蒙应用往往混合 ArkTS、C++等多种语言,对象生命周期交错

2)内存泄露可能潜伏在大量系统对象之间,定位困难

3)开发者真正想要的是:“告诉我哪一类对象在持续增长,以及为什么”


我们的设计:给模型三把“手术刀”

1)analyze_comparison_class:按类聚合,返回占用靠前的类信息,快速锁定“嫌疑对象”;

2)analyze_comparison_object:列出某类较大的实例对象及各自大小,观察该类的实例分布;

3)analyze_path_to_gc_root:给出某实例对象的完整引用链(到 GC Root),并给出问题疑似原因。大模型在一次推理中,可引导开发者多次调用这三把“手术刀”,最终找到真正导致泄露的根引用。


实战效果

在应用开发中,开发者经常依赖 GC 自动管理内存,忘记释放全局对象中存在的无用缓存,导致内存持续上涨,以下是一个常见代码示例:


 

对应的运行时调优内存快照界面:


 

通过智慧调优,可以快速缩小排查范围,给出引用链上可疑的节点以及常见原因


 

操作方式与步骤

智慧调优内存分析整体使用流程和冷启动/卡顿丢帧较为相似,主要区别在于若使用 Snapshot 模板对堆快照问题进行分析时,支持在对话框中选择单个 Snapshot 分析,或选择两个 Snapshot 进行对比分析。开启分析任务后,AI 会按类聚合,返回内存占用靠前的类信息,此时选中某个类点击 Analyze



AI 会列出某类较大的实例对象及各自大小,继续选中某个实例对象进行分析,AI 会给出某实例对象的完整引用链(到 GC Root),并给出问题疑似原因。

 


立即体验智慧调优,让性能调优更简单


CodeGenie 智慧调优旨在通过 AI 辅助分析,化繁为简,提升开发者性能调优效率,从基础重复的工作中解放开发者创造力,助力开发者一键解锁流畅、高性能的鸿蒙应用。

目前智慧调优开发者尝鲜预览版已上线华为开发者联盟官网,开发者可以在华为开发者联盟官网搜索“HarmonyOS 6 开发者预览版 Beta 招募”相关内容,报名体验。除了智慧调优之外,开发者还可以体验智能知识问答、代码生成、页面生成、万能卡片生成和编译报错智能分析等多种能力,进一步帮助开发者提高编码效率。

立即开始,让性能调优更简单!

2025-09-05 17:585

评论

发布
暂无评论

开发技术指南 | 最全 Substrate 与 Polkadot 技术文档、教程、课程

One Block Community

区块链 技术 波卡生态

拯救工程师,远程开发C++的四大秘笈|视频教程

OneFlow

c++ 教程分享

高校学生请注意:想成为技术大牛,参加这个计划就够了!

科技热闻

浅析数字化转型与产业互联网

IT民工大叔

产业互联网 数字化转型

【linux运维】linux运维会被淘汰吗?会消失在云计算中吗?

行云管家

云计算 IT运维 云运维

影视作品制作中不可或缺的技术支撑——云渲染技术

Finovy Cloud

服务器 云渲染 GPU算力

web前端培训Vue3 TypeScript 如何实现useRequest

@零度

Vue 前端开发

企业电子文档管理需要注意的点及解决措施

小炮

文档管理

大数据培训实时数仓实践以及架构的演进

@零度

数仓 大数据开发

快速上手vs2019

Loken

音视频 5月月更

phpstorm 配置 Xdebug 调试

CRMEB

校企融合,打造金融科技应用人才高地

非凸科技

校企合作 非凸

纪念左晖:敢为天下先(修订版)

IT民工大叔

产业互联网 数字化转型 企业家精神 左晖

虚拟机是什么?跟堡垒机有哪些区别?

行云管家

虚拟机 堡垒机

架构的尽头是架构师

IT民工大叔

架构师

java培训SpringBoot 中的各种参数校验

@零度

JAVA开发 springboot

墨天轮访谈 | 阿里云捷熙:AnalyticDB,人人可用的数据分析服务

墨天轮

数据库 阿里云 国产数据库

详解GaussDB(DWS)的CPU资源隔离管控能力

华为云开发者联盟

数据库 cpu GaussDB 资源管控

解读ICDE'22论文:基于鲁棒和可解释自编码器的无监督时间序列离群点检测算法

华为云开发者联盟

数据挖掘 数据库 时间序列 自动编码器

第一次读 “Clean” 系列,并没有觉得这是一本多好的书

博文视点Broadview

SAP UI5 框架的 manifest.json

汪子熙

前端开发 SAP Fiori SAP UI5 5月月更

SREWorks持续交付云原生化: 镜像构建

阿里云大数据AI技术

大数据 运维 云原生

如视技术副总裁杨永林:当传统产业遇到“数字空间”

阿里云弹性计算

视觉计算 数字空间 VR看房

OpenYurt v0.7.0 版本解读:无侵入的跨网络域解决方案 Raven

阿里巴巴云原生

阿里云 开源 云原生 边缘计算 openyurt

Docker容器:将带UI的程序直接转为Web应用,so easy

华为云开发者联盟

云计算 后端 Docker容器 Web应用

CopyOnWriteArrayList 源码分析-其它方法

zarmnosaj

5月月更

技术分享| 快对讲调度系统设计概要

anyRTC开发者

音视频 语音通话 调度 视频通话 快对讲

LR.Net低代码开发平台 快速设计权限管理模块

力软低代码开发平台

“技术商人”溯源考

IT民工大叔

华为 工程师 任正非讲话 商业意识 复合型人才

银行应将低代码能力作为在评估厂商综合能力的一个维度

易观分析

低代码 银行

查询语句写了limit 1,为什么依然很慢?

华为云开发者联盟

后端 开发 计算引擎 limit 1

CodeGenie的AI辅助调优让你问题定位效率大幅提升_HarmonyOS_HarmonyOS_InfoQ精选文章