极智AI | 再谈昇腾auto tune

本文涉及的产品
视觉智能开放平台,图像资源包5000点
视觉智能开放平台,分割抠图1万点
视觉智能开放平台,视频资源包5000点
简介: 大家好,我是极智视界,本文 再来谈谈昇腾 auto tune。

大家好,我是极智视界,本文 再来谈谈昇腾 auto tune

写这篇主要是为了填这篇《谈谈昇腾 auto tune》自己留的坑,上篇其实大篇幅在说昇腾 auto tune 的一些 由来,以及与 深度学习编译器 tvm 的一些联系,感兴趣的同学可以去瞧瞧~

这篇主要写昇腾 auto tune 的原理。

上篇说到,auto tune 的作用其实就是充分发挥硬件资源进行算子的自动调优。而具体到昇腾里,把 auto tune 功能集成在 atc模型转换工具 里面,在使用 atc 生成 om 模型的时候,打开 --auto_tune_mode 开关就能够方便的使用 auto tune 功能了,调优的结果会放在自定义路径 / 默认路径的知识库中,然后生成模型的时候就可以享用调优的知识库,生成性能更加好的模型。

昇腾里的 auto tune 包含两种调优模式:RLGA,而搜索算法在 tvm 里会更加丰富一些,包括:RandomGridSearchGAXGBoost。如下:

主要来说说昇腾的两种调优模式:

  • RL Mode:Reinforcement Larning 即强化学习,原理为 将schedule调度过程抽象为基于蒙特卡洛树搜索的决策链 (蒙特卡洛树搜索又称随机抽样或统计试验方法,阿尔法狗在下棋的时候,做决策的不是策略网络和价值网络,而是蒙特卡洛树搜索),然后使用神经网络指导决策,其中的神经网络是基于强化学习训练而成的。昇腾的 RL Mode 主要支持 elewise、broadcast、reduce 类算子;
  • GA Mode:这个思想和 tvm 的一样,主要通过遗传算法 (GA) 进行多轮的参数寻优,从而获得最优的策略。采用多级组合优化生成调优空间,加入人工经验进行剪枝、压缩、重排,以提高搜索效率。昇腾的 GA Mode 主要支持 cube 类算子 (所谓 cube类算子 就是指 矩阵乘之类的算子,因为 cube 就是指昇腾的矩阵运算单元),如 Conv2D、GEMM、MatMul、FullyConnection 等;

介绍到这里其实还是比较笼统,下面再深入来讲解两种模式的原理。

RL Mode 原理

首先来说说 RL Mode,RL Mode 由 RL TuneRL知识库 两部分组成,其中 RL Tune 主要负责算子调优,而 RL知识库 则用来存储调优后的策略

RL Tune 中会使用强化学习训练出一个策略评价模型 Policy Model,训练的原理如下:

RL知识库包括 内置知识库 与 自定义知识库。内置知识库顾名思义就是内置好的了,是预置的针对常见算子不同 shape 的调优后的策略 (知识库),存储路径为 cann_install_path/opp/data/rl/<soc_version>/built-in。而自定义知识库 是用户使用 RL Mode 调优后生成的性能优于内置知识库的调优策略 (所以这里在调优的过程中会去和内置知识库进行一个性能比较),默认存储在 cann_install_path/opp/data/rl/<soc_version>/custom,也可自行指定存储路径。

GA Mode 原理

GA Mode 首先会进行调优空间的分析,然后利用遗传算法进行搜索,评估出最优调优策略后存入知识库中。

GA Mode 中调优空间分析主要是指 tiling组合分析,生成调优空间后 (tiling参数空间),再利用遗传算法进行调优搜索,最后返回最优的 tiling参数。整个过程如下:

同样,GA 知识库包括 内置知识库 与 自定义知识库。内置知识库存储路径为 cann_install_path/opp/data/tiling/<soc_version>/built-in。而自定义知识库默认存储在 cann_install_path/opp/data/tiling/<soc_version>/custom,同样也可自行指定存储路径。

再留个坑吧,具体用法咱们下篇再说。


好了,以上分享了 再谈昇腾 auto tune,希望我的分享能对你的学习有一点帮助。


logo_show.gif

相关文章
|
27天前
|
人工智能 自然语言处理 运维
钉钉x昇腾:用AI一体机撬动企业数字资产智能化
大模型在过去两年迅速崛起,正加速应用于各行各业。尤其在办公领域,其主要模态——文字和图片,成为了数字化办公的基础内容,催生了公文写作、表格生成、文本翻译等多种应用场景,显著提升了工作效率。然而,AI引入办公场景也带来了数据安全与成本等问题。为此,钉钉与昇腾联合推出的“钉钉专属AI一体机解决方案”,通过本地化部署解决了数据安全、成本高昂及落地难等痛点,实现了从硬件到软件的深度协同优化,为企业提供了开箱即用的AI服务,推动了办公场景的智能化升级。
56 11
|
2月前
|
存储 人工智能 文字识别
AI开发初体验:昇腾加持,OrangePi AIpro 开发板
本文分享了作者使用OrangePi AIpro开发板的初体验,详细介绍了开箱、硬件连接、AI程序开发环境搭建、以及通过Jupyter Lab运行AI程序的过程,并展示了文字识别、图像分类和卡通化等AI应用实例,表达了AI时代已经到来的观点。
99 1
|
5月前
|
机器学习/深度学习 人工智能 算法
极智AI | 谈谈多通道img2col的实现
大家好,我是极智视界,本文来谈谈 多通道img2col的实现。
147 1
|
5月前
|
人工智能 JSON API
极智AI | 三谈昇腾CANN量化
大家好,我是极智视界,本文介绍一下 三谈昇腾CANN量化。
93 1
|
5月前
|
人工智能 API Python
极智AI | 再谈昇腾CANN量化
大家好,我是极智视界,本文介绍一下 再谈昇腾CANN量化。
145 1
|
5月前
|
人工智能 自然语言处理 算法
极智AI | TensorRT API构建模型推理流程
大家好,我是极智视界,本文介绍一下 TensorRT API 构建模型推理流程。
509 1
|
5月前
|
人工智能 算法 数据格式
极智AI | 谈谈昇腾CANN量化
大家好,我是极智视界,本文介绍一下 谈谈昇腾CANN量化。
177 0
|
6天前
|
人工智能 Serverless
AI助理精准匹配------助力快速搭建Stable Difussion图像生成应用
【10月更文挑战第7天】过去在阿里云社区搭建Stable Diffusion图像生成应用需查阅在线实验室或官方文档,耗时且不便。现阿里云AI助理提供精准匹配服务,直接在首页询问AI助理即可获取详细部署步骤,简化了操作流程,提高了效率。用户可按AI助理提供的步骤快速完成应用创建、参数设置、应用部署及资源释放等操作,轻松体验Stable Diffusion图像生成功能。
|
7天前
|
传感器 机器学习/深度学习 人工智能
AI在智能制造中的革新应用与未来展望
【10月更文挑战第10天】AI在智能制造中的革新应用与未来展望
|
23小时前
|
机器学习/深度学习 人工智能 算法
介绍一下AI在药物研发中的应用。
【10月更文挑战第16天】介绍一下AI在药物研发中的应用。
7 0