[发明专利]用于神经网络模型的编译方法和相关产品在审
申请号: | 202110507769.2 | 申请日: | 2021-05-10 |
公开(公告)号: | CN115329923A | 公开(公告)日: | 2022-11-11 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 上海寒武纪信息科技有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/08;G06F8/41 |
代理公司: | 北京维昊知识产权代理事务所(普通合伙) 11804 | 代理人: | 孙新国 |
地址: | 201306 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 神经网络 模型 编译 方法 相关 产品 | ||
1.一种用于神经网络模型的编译方法,包括:
对所述神经网络模型进行运算分析,以获取在执行所述神经网络模型时所要进行的张量运算和标量运算;
对所述张量运算和标量运算在多个处理器上执行时的性能指标进行评估;以及
根据所述评估的评估结果将所述张量运算和标量运算分配至相应的处理器以便执行。
2.根据权利要求1所述的编译方法,其中对所述张量运算和标量运算在多个处理器上执行时的性能指标进行评估包括:
使用代价函数和/或收益函数来评估所述张量运算和标量运算的所述性能指标,
其中所述代价函数用于确定所述张量运算或标量运算在候选的处理器上运行时所产生的代价,并且所述收益函数用于确定所述张量运算或标量运算在候选的处理器上运行时所产生的收益。
3.根据权利要求2所述的编译方法,其中所述代价函数包括数据传输代价和/或累积代价,其中所述数据传输代价是所述张量运算或标量运算在候选的处理器上运行时传输数据所产生的代价,而所述累积代价是通过累加所述张量运算或标量运算在候选的处理器上持续运行所产生的代价而获得的。
4.根据权利要求3所述的编译方法,其中所述收益函数包括加速收益和/或复杂度收益,其中所述加速收益是所述张量运算或标量运算在候选的处理器上运行时所获得的运算效率收益,而所述复杂度收益是所述张量运算或标量运算在候选的处理器上运行时,运算复杂度得以降低时所获得的收益。
5.根据权利要求1-4的任意一项所述的编译方法,其中根据所述评估结果将所述张量运算和标量运算分配至相应的处理器以便执行包括:
使用所述代价函数和收益函数来查找函数库,以获得所述代价函数和收益函数的代价值和收益值;以及
基于所述代价值和收益值来确定将所述张量运算或标量运算分配至相应的通用处理器或智能处理器之一。
6.根据权利要求5所述的编译方法,其中针对于所述收益函数设置有第一阈值并且针对于所述代价函数设置有第二阈值,并且其中分配至相应的处理器包括根据以下的比较来将所述张量运算或标量运算分配至相应的通用处理器或智能处理器之一:
根据所述收益值与所述第一阈值的比较;和/或
根据所述代价值与所述第二阈值的比较。
7.根据权利要求6所述的编译方法,其中:
当所述收益值大于或等于所述第一阈值时,将对应的张量运算或标量运算分配至相应的通用处理器或智能处理器之一;或者
当所述代价值小于或等于所述第二阈值时,将对应的张量运算或标量运算分配至相应的通用处理器或智能处理器之一。
8.根据权利要求6所述的编译方法,其中:
当所述收益值大于或等于所述第一阈值并且所述代价值小于或等于第二阈值时,将对应的所述张量运算或标量运算分配至相应的通用处理器或智能处理器之一。
9.根据权利要求6-8的任意一项所述的编译方法,其中所述智能处理器包括多个智能处理器核,所述编译方法包括将所述张量运算或标量运算分配至相应的智能处理器核之一。
10.根据权利要求1所述的编译方法,其中进行所述运算分析以获取所要进行的所述张量运算和标量运算包括:
根据运行所述神经网络模型的硬件配置来对所述神经网络模型进行编译,以获得执行神经网络模型时所要进行的张量运算和标量运算。
11.根据权利要求10所述的编译方法,其中所述编译包括对神经网络模型执行形状推导、分块和张量优化处理中的一项或多项,以获得执行所述神经网络模型时所要进行的张量运算。
12.根据权利要求10所述的编译方法,其中所述编译还包括对所述神经网络模型中的标量运算进行标量优化,以获得执行所述神经网络模型时所要进行的标量运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海寒武纪信息科技有限公司,未经上海寒武纪信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110507769.2/1.html,转载请声明来源钻瓜专利网。