规范化语句中的表达式的编译方法、可读存储介质及编译器技术

技术编号:36974252 阅读:22 留言:0更新日期:2023-03-25 17:54
本发明专利技术涉及规范化语句中的表达式的编译方法、可读存储介质及编译器,其中本发明专利技术的计算装置包括在集成电路装置中,该集成电路装置包括通用互联接口和其他处理装置。计算装置与其他处理装置进行交互,共同完成用户指定的计算操作。集成电路装置还可以包括存储装置,存储装置分别与计算装置和其他处理装置连接,用于计算装置和其他处理装置的数据存储。于计算装置和其他处理装置的数据存储。于计算装置和其他处理装置的数据存储。

【技术实现步骤摘要】
规范化语句中的表达式的编译方法、可读存储介质及编译器


[0001]本专利技术一般地涉及神经网络领域。更具体地,本专利技术涉及规范化语句中的表达式的编译方法、可读存储介质及编译器。

技术介绍

[0002]在实现神经网络的算子时,开发者可以利用多种计算方法达到相同的计算结果,不同的计算方法会延伸出代码的局部性、并行性的差异。TVM是一种开源深度学习编译器,其通过提供图级别的优化和算子级别的优化,为不同的硬件后端生成高效的机器代码。
[0003]TVM基于张量表达式来定义算子,并提供一系列调度原语对算子代码做循环变换。用张量表达式描述的算子会被TVM翻译为TVM中间表示(intermediate representation,IR),中间表示是一种树状的、易于描述循环计算的高级表达方式。TVM在中间表示上实现了一系列分析和变换的优化遍,对算子进行调整,最终生成目标硬件平台上的高效代码。
[0004]深度学习应用中的重要算子,如卷积、矩阵乘和向量加等,都会被TVM编译生成中间表示上的多层嵌套循环,这类程序经过循环变换后会产生与循环迭代变本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种规范化描述神经网络算子的语句中的表达式的编译方法,包括:根据每个表达式的类型,设定所述表达式的等级;以及基于所述语句中所有表达式的等级,对每个表达式排序。2.根据权利要求1所述的编译方法,还包括:判断所述语句是否满足结合律;其中,如所述语句满足结合律,执行所述设定步骤。3.根据权利要求1所述的编译方法,还包括:判断所述语句是否满足结合律;其中,如所述语句满足结合律,执行所述排序步骤。4.根据权利要求1所述的编译方法,还包括:判断所述语句是否为条件语句且条件成立与否对应同一个返回值;以及如所述语句为条件语句且条件成立与否对应同一个返回值,合并具有相同返回值的判断条件,以更新所述条件语句;其中,所述设定步骤根据更新后的条件语句的类型设定所述等级。5.根据权利要求2或3所述的编译方法,其中所述设定步骤包括:判断所述表达式是否为常数;以及如所述表达式为常数,设定所述等级为第一级。6.根据权利要求5所述的编译方法,其中所述设定步骤包括:判断所述表达式是否包括嵌套循环;以及如所述表达式包括嵌套循环,设定所述等级为第二级。7.根据权利要求6所述的编译方法,其中所述嵌套循环包括N个循环,所述设定所述等级为第二级的步骤包括:设定最外层循环的子等级为第一子级;设定次外层循环的子等级为第二子级;以及以此方式设定其他各层循环的子等级,直到设定最内层循环的子等级为第N子级。8.根据权利要求7所述的编译方法,其中所述设定步骤包括:如所...

【专利技术属性】
技术研发人员:请求不公布姓名
申请(专利权)人:中科寒武纪科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1