昇思MindSpore进阶教程--AOE调优工具

大家好,我是刘明,明志科技创始人,华为昇思MindSpore布道师。

技术上主攻前端开发、鸿蒙开发和AI算法研究。

努力为大家带来持续的技术分享,如果你也喜欢我的文章,就点个关注吧

概述

AOE(Ascend Optimization Engine)是一款自动调优工具,作用是充分利用有限的硬件资源,以满足算子和整网的性能要求。AOE工具的详细介绍,请参考AOE简介。本文档主要介绍如何使用AOE工具实现MindSpore训练场景下的调优。

开启调优

配置环境变量。

在set_context接口中设置aoe_tune_mode,即可开启AOE工具进行在线调优。aoe_tune_mode的取值为"online", 开启在线调优。

在set_context接口中设置aoe_config,可设置调优配置。job_type是设置调优类型,取值在["1", "2"]中,默认值是2。其中:

1:表示子图调优。

2:表示算子调优。

举例在线调优的使用方法:

python 复制代码
import mindspore as ms
ms.set_context(aoe_tune_mode="online", aoe_config={"job_type": "2"})

设置好上述context之后,按照正常执行训练脚本方式即可启动调优,用例执行期间,无需任何操作,用例执行结束之后的结果即为调优之后的结果。

查看调优结果

调优开始后,会在执行调优的工作目录下生成命名为aoe_result_opat_{timestamp}_{pidxxx}.json的文件来记录调优过程和调优结果。该文件的具体解析请参考调优结果文件分析。

调优完成后,若满足自定义知识库生成条件,则会生成自定义知识库。如果指定了知识库存储路径的环境变量TUNE_BANK_PATH,调优生成的知识库会在指定目录下生成,否则调优生成的知识库会在如下默认路径中${HOME}/Ascend/latest/data/aoe/custom/graph/${soc_version}

知识库合并

算子调优结束后,生成的调优知识库支持合并以便于再次执行用例使用(或者其他脚本使用)。仅支持相同昇腾AI处理器型号下的自定义知识库合并。具体合并方式请参考CANN开发工具指南中的合并知识库。

使用须知

AOE调优工具在使用时,请注意以下几点:

  1. AOE调优工具只支持在Ascend环境上使用。

  2. 请确保运行环境中执行调优用户的home目录下磁盘可用空间>=20G。

  3. 开启该调优工具后,可以明显感知算子编译时间变长,属于正常现象。

相关推荐
一个处女座的程序猿2 小时前
LLMs之SLMs:《Small Language Models are the Future of Agentic AI》的翻译与解读
人工智能·自然语言处理·小语言模型·slms
档案宝档案管理5 小时前
档案宝:企业合同档案管理的“安全保险箱”与“效率加速器”
大数据·数据库·人工智能·安全·档案·档案管理
IT_Beijing_BIT6 小时前
TensorFlow Keras
人工智能·tensorflow·keras
mit6.8246 小时前
[手机AI开发sdk] 安卓上的Linux环境
人工智能·智能手机
张较瘦_6 小时前
[论文阅读] AI + 教育 | AI赋能“三个课堂”的破局之道——具身认知与技术路径深度解读
论文阅读·人工智能
小雨青年7 小时前
Cursor 项目实战:AI播客策划助手(二)—— 多轮交互打磨播客文案的技术实现与实践
前端·人工智能·状态模式·交互
西西弗Sisyphus7 小时前
线性代数 - 初等矩阵
人工智能·线性代数·机器学习
王哈哈^_^7 小时前
【数据集】【YOLO】【目标检测】共享单车数据集,共享单车识别数据集 3596 张,YOLO自行车识别算法实战训推教程。
人工智能·算法·yolo·目标检测·计算机视觉·视觉检测·毕业设计
仙人掌_lz7 小时前
Multi-Agent的编排模式总结/ Parlant和LangGraph差异对比
人工智能·ai·llm·原型模式·rag·智能体
背包客研究7 小时前
如何在机器学习中使用特征提取对表格数据进行处理
人工智能·机器学习