本篇文章3208字,读完约8分钟
晓查发来自凹非寺
量子比特报道|公众号qbitai
“研究芯片光砸钱是不行的,需要砸数学家、物理学家。 ”。
任正非今年5月接受《科学技术日报》采访时这样说。 任正非说,华为已经有700多名数学家。
现在,这些数学家的基础研究,华为在ai和芯片等行业有所报道。
最近,来自郑州数学工程和先进计算国家要点实验室的赵捷老师与华为mindspore团队合作,根据基础数学能力,处理ai芯片优化的重要问题,获得顶级学术会议micro的最佳论文提名,micro计
本论文如何优化ai芯片上的程序编译,尽量“榨干”ai芯片的性能,不仅支持华为自研的升腾910芯片,还支持现在主流的nvidia a100/v100 gpu,今后越来越多的硬件
在cpu方面,与polymage和halide相比,平均性能分别提高了20%和33%。 gpu的平均性能比halide提高了17%。 在ai芯片通路的晋升910中,本文提出的方法可以将resnet-50模型的整个执行时间提高16%。
论文发表共享理论创新,开源社区也迅速推进了这项研究的落地。 基于polyhedral模型的操作员自动生成技术mindakg现在集成到ai框架mindspore中。
mindakg的作用是优化深度神经网络中的算子,利用polyhedral模型处理ai应用于不同芯片架构的性能自动优化课题。
polyhedral模型是mindakg数学的核心。
现在,所有的mindakg源代码都已经是gitee上的开源代码,可以说是看起来很快就能得到的模型。 论文合作者赵捷老师也现在是mindspore社区sig-akg的核心成员。 业界罕见的强健开源开发这么大规模复杂的技术,具有这种开源野心的mindspore一定会在很大程度上考验其他开源ai框架的“硬件核心水平”。
基于polyhedral的编译技术
polyhedral编译技术的历史悠久,可以追溯到大型机时代研究程序的自动并行问题开始。 两位图灵奖获得者richard karp,leslie lamport相继为此提出了相关理论。
polyhedral模型必须在编译器中建立非常好的数学模型来计算时间表。
这个数学模型的基础是通过处理整数线性规划问题得到了最优解,因为整数线性规划问题的解决过程是np完全问题,这只能用很少的近似方法解决。
如果这种数学模型的时间表不够,也许比手工制作时间表性能要好。
如何构建polyhedral模型的整数线性规划问题,达到相当于手工编制调度性能的结果,是当前研究的核心难点。
既然是np完全问题,如何降低polyhedral模型求解的多少和复杂性,也是现在应该处理的问题。
polyhedral模型涉及许多基础数学理论,包括线性代数、空间几何、优化理论和矩阵论、基础计算机理论科学的知识图论、数理逻辑等,这些知识点本身并不太复杂,但把这些知识点统一表现在一个模型中
目前国内从事polyhedral模型研究的人员很少,但在国外,许多科技制造商非常重视这项技术的研究,google、facebook、nvidia这几家ai领军公司都是polyhedral
华为mindspore团队也聚集了polyhedral行业的顶级专家,全力攻击新的调度算法。
华为自研ai框架mindspore利用polyhedral模型实现了升值系列芯片的操作员自动生成器mindakg,使用可定制的求解算法,保证了程序的性能,并且比较有效
mindspore的应用创新
这篇新论文的研究重点是用polyhedral模型处理操作员自动生成的问题,与halide和tvm中使用的“compute+schedule”的方法不同。 本文研究的操作员自动化技术不需要手动创建操作员调度算法。。
在此基础上,这项研究有以下重要创新点。
首先,这个事业自动化实现了循环块和合并的新组合。 这种组合在现有的基于polyhedral的自动编译中没有被考虑,因为现有的polyhedral编译过程限定了这两个循环变换的组合顺序。
另外,这样组合即使是现有的手工作业的日程制作的编译作业也不容易实现,但在很多复杂的场景中,由于不容易手工指定基础计算和数据间的映射关系,所以手工作业的日程制作的方法
其次,该研究提高了程序的性能,同时比较有效地缓解了现有的polyhedral编译技术的时间多和复杂度的问题。
一般性能的提高和时间多,噪声的降低是矛盾的,但该研究避免了使用上述整数线性规划问题求解调度的过程,因此可以减少编译时间多、噪声多,同时保证了程序性能的显着提高
最后,这项研究具有很好的可扩展性,支持各种不同硬件体系结构(如Intel CPU和NVDIA GPU )的代码自动生成。 特别是,该业务已经落地华为自研ai框架mindspore的操作员自动生成器mindakg,可以应对上升系列ai芯片上的操作员自动生成。
通过包括神经网络、图像解决、稀疏矩阵计算、线性代数等应用行业在内的11项基准测试实验,该研究说明其做法在先进的cpu、gpu及ai芯片架构中可以得到比较有效的性能改善。
在ai芯片通路的晋升910中,本文提出的方法可以将resnet-50模型的整个执行时间提高16%。
代码是开放源代码的
华为mindakg相关代码已经是gitee开源,客户可以从mindspore端构建,也可以独立编译执行。
mindakg现在支持华为自研升腾ai芯片、gpu v100/a100等硬件上高性能操作员的自动生成。
mindakg的主要过程分为以下四个部分。
正规化:为了处理polyhedral表现能力的极限(只能解决静态线性程序),首先需要将计算式ir正规化。 规范化模块中的优化主要包括自动运算符inline、循环划分、公共子表达式优化等。
自动调度:自动调度模块基于polyhedral技术,主要包括自动量化、自动划分、分解和数据移动等。
命令发送:命令发送模块的优化包括循环规范化、标签自动生成、命令发送等。
后端优化:后端优化模块的优化包括双缓冲区、存储重写和插入同步命令。
mindspore期待着开发者的参加
今年的国产ai框架通常像雨后春笋一样出现,华为mindspore也是其中之一。 华为也是拥有罕见的自研ai框架、ai推理芯片、ai训练芯片的国内制造商。
应用于mindspore的polyhedral技术获得了micro最佳论文的提名,证明了farway在ai基础技术上取得了国际同意。 让我们来看看任正非口的数学家在华为ai中所起的最大作用。
华为mindspore不是国内最早的开源ai框架,而是通过对基础技术的投资迅速得到学术界和开发者的同意。
但不可忽视的是,生态才是ai框架最重要的生命力,为了建立快速增长的ai社区,mindspore需要ai开发者积极参加,领导ai创新,共同成长。
12月14日至25日,mindspore社区在目前开展msg活动的12个城市,开展另一方面的“mindcon极客周”活动,在寒冷的冬天,开发者每天聚集在一个城市,修复社区bug,学习 这次活动还根据点灯城市的积分评价(新star积10分,bugfix积100完成,青铜战段任务积200分)方法,在12个城市pk中诞生了明年6月第2届mindcon极客周的主办城市。 我想认识像akg这样的黑科技开发者,请快点申请!
论文地址:
Micro ARCH/Micro 53/PaPers/738300 A427.PDF
开源地址:
gitee/mindspore/akg
结束了
本文是网易信息网易号特色复制激励计划账户【量子位】原始复制,未经账户授权,禁止擅自转载。
原标题:《53年来国内唯一三篇mindspore加速上涨芯片论文获得国际顶级会micro最佳论文提名》
阅读原文。
来源:联合新闻网
标题:热门:53年来国内唯三,MindSpore加速昇腾芯片论文获国际顶会MICRO最佳论文提名
地址:http://www.longtansi.com.cn/news/38811.html