极智AI | 谈谈昇腾auto tune

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

大家好,我是极智视界,本文介绍一下 谈谈昇腾 auto tune

auto tune 也即 自动调优,在 AI 芯片国产化适配的过程中,你会发现有好几家是基于 tvm 的拓展。这里昇腾也不例外,所以昇腾的 auto tune一切源于TVM。tvm 会有几个关键词:自动优化深度学习编译器适配多种硬件后端,这里昇腾的 auto tune 最关注的应该就是 自动优化。所以,可能会蹦出:为什么需要自动优化呢?总结来说主要有几下几点:

首先是 AI芯片在计算过程中需要精心的排布才能充分发挥算力 (pipeline 优化):AI 芯片通常由计算单元 (如昇腾的就有 矩阵计算单元、向量计算单元 和 标量计算单元等多个计算单元)、控制单元、存储单元 (on-chip、global memory等) 模块组成,运行在上面的算子,耗时或者吞吐量无法简单的通过计算量和算力获得,更要看各个组件之间的协同情况。即使相同的计算任务部署在相同的卡上,用不同的 pipeline 排布 效率也会差别十分的大,而看似相似的计算输入可能要求的计算 pipeline 流水线排布也是相差巨大。算子的理论最大性能是其瓶颈负载 (计算、数据传输等) 除以对应处理单元的效率。然而,在现代 AI 卡上 (比如昇腾卡),一次计算任务通常会被切分成多片进行处理,这样就会产生计算或传输冗余,所以实际负载往往要大于理论负载。咱们通常需要把冗余较小的方案或者冗余转移到非瓶颈组件上。这就是 pipeline 优化,如果都要靠人工一点点去排布,工作量巨大。

其次是算子schedule的优化:这是怎么回事呢?我们一般理解的算子实现其实只有 算子计算实现,而像 tvm 这类编译优化的框架中还有个概念是 算子调度实现 (你也可以发现,在写昇腾TBE算子 或者 是写TVM算子的时候,需要实现两个部分:compute 和 schedule)。可以说算子的计算实现优化是有限的,但是算子调度优化却是有千千万,拿 tvm 里的算子调度优化就包括:sketch generation、random annotation、突变、交叉等 (我有一篇文章专门写了 tvm 的 auto-tune,有兴趣的同学可以移步查阅 《极智AI | 谈谈 tvm ansor》)。如果这些算子调度优化,都需要人工一点点去抠,一点点去优化,一方面要求的人工经验门槛太高,另一方面人工优化难以覆盖全场景。有了 auto tune,可以说刚毕业的学生,甚至在校的同学也能够通过 简单的配置 获得不错的性能。

最后是 能够快速发挥不同硬件后端的算力:当然这并不是昇腾所需要考虑的,因为昇腾的 auto tune 只需要针对昇腾的卡 (特定的芯片、特定的架构) 进行极致的优化就可以了,而不要考虑适配其他家的芯片。但 TVM 不一样,TVM 的提出本身就是为了解决 前端训练框架太多、后端硬件太多,部署难、慢、重复造轮子 的问题,所以 auto-tune (tvm ansor) 有个很重要的使命是 能够快速发挥不同硬件后端的最大算力

经过上述讨论,应该很容易得出结论:昇腾 auto tune 模块的作用是 快速、充分、低门槛地利用 Ascend 硬件资源进行算子的自动优化。昇腾的 auto tune 模块集成在 ATC 工具中,所以是在做模型转换的时候去做 auto tune。

具体的下篇再说吧。


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


logo_show.gif

相关文章
|
3月前
|
人工智能 自然语言处理 运维
钉钉x昇腾:用AI一体机撬动企业数字资产智能化
大模型在过去两年迅速崛起,正加速应用于各行各业。尤其在办公领域,其主要模态——文字和图片,成为了数字化办公的基础内容,催生了公文写作、表格生成、文本翻译等多种应用场景,显著提升了工作效率。然而,AI引入办公场景也带来了数据安全与成本等问题。为此,钉钉与昇腾联合推出的“钉钉专属AI一体机解决方案”,通过本地化部署解决了数据安全、成本高昂及落地难等痛点,实现了从硬件到软件的深度协同优化,为企业提供了开箱即用的AI服务,推动了办公场景的智能化升级。
144 11
|
4月前
|
存储 人工智能 文字识别
AI开发初体验:昇腾加持,OrangePi AIpro 开发板
本文分享了作者使用OrangePi AIpro开发板的初体验,详细介绍了开箱、硬件连接、AI程序开发环境搭建、以及通过Jupyter Lab运行AI程序的过程,并展示了文字识别、图像分类和卡通化等AI应用实例,表达了AI时代已经到来的观点。
290 1
|
7月前
|
机器学习/深度学习 人工智能 算法
极智AI | 谈谈多通道img2col的实现
大家好,我是极智视界,本文来谈谈 多通道img2col的实现。
164 1
|
7月前
|
人工智能 JSON API
极智AI | 三谈昇腾CANN量化
大家好,我是极智视界,本文介绍一下 三谈昇腾CANN量化。
98 1
|
7月前
|
人工智能 API Python
极智AI | 再谈昇腾CANN量化
大家好,我是极智视界,本文介绍一下 再谈昇腾CANN量化。
149 1
|
7月前
|
人工智能 自然语言处理 算法
极智AI | TensorRT API构建模型推理流程
大家好,我是极智视界,本文介绍一下 TensorRT API 构建模型推理流程。
520 1
|
7月前
|
人工智能 算法 数据格式
极智AI | 谈谈昇腾CANN量化
大家好,我是极智视界,本文介绍一下 谈谈昇腾CANN量化。
197 0
|
8天前
|
机器学习/深度学习 人工智能 算法
AI技术在医疗诊断中的应用及前景展望
本文旨在探讨人工智能(AI)技术在医疗诊断领域的应用现状、挑战与未来发展趋势。通过分析AI技术如何助力提高诊断准确率、缩短诊断时间以及降低医疗成本,揭示了其在现代医疗体系中的重要价值。同时,文章也指出了当前AI医疗面临的数据隐私、算法透明度等挑战,并对未来的发展方向进行了展望。
|
16天前
|
机器学习/深度学习 人工智能 自然语言处理
当前AI大模型在软件开发中的创新应用与挑战
2024年,AI大模型在软件开发领域的应用正重塑传统流程,从自动化编码、智能协作到代码审查和测试,显著提升了开发效率和代码质量。然而,技术挑战、伦理安全及模型可解释性等问题仍需解决。未来,AI将继续推动软件开发向更高效、智能化方向发展。
|
20天前
|
机器学习/深度学习 人工智能 自然语言处理
AI在医疗领域的应用及其挑战
【10月更文挑战第34天】本文将探讨人工智能(AI)在医疗领域的应用及其面临的挑战。我们将从AI技术的基本概念入手,然后详细介绍其在医疗领域的各种应用,如疾病诊断、药物研发、患者护理等。最后,我们将讨论AI在医疗领域面临的主要挑战,包括数据隐私、算法偏见、法规合规等问题。
40 1

热门文章

最新文章