【技术实现步骤摘要】
处理单元、相关装置和方法
[0001]本公开涉及芯片领域,更具体而言,涉及一种处理单元、相关装置和方法。
技术介绍
[0002]在深度学习(deep learning)领域,推理(Inference)是指将一个预先训练好的深度学习模型推送到实际应用场景中使用。关于推理性能,除了硬件层面的优化,在算法层面,模型量化(Quantized Model)是提升推理性能的重要手段之一。模型量化是指,将深度学习模型中的节点的权重数据和输入数据,从高精度的量化级转换为低精度的量化级,例如从32位单精度浮点数(FP32)转化为8位整型数据(INT8)。这样做虽然精度降低了,但有助于降低对数据吞吐量和存储空间的要求。
[0003]现有技术中,一般通过在深度学习模型的静态图中确定待量化算子,并在前面加入量化节点来实现量化。静态图是指根据深度学习模型的结构在编写代码前预先生成的、表示深度学习模型中的各操作节点和各操作节点之间的关系的图。每个操作节点在静态图中表示成算子。量化节点即用于执行量化的程序。有些算子比较简单,仅包括一两种运算;而有些算子比较复杂,例如长短期记忆模型(LSTM)、门控循环单元(GRU),其包括多个矩阵乘及张量间的点加、点乘、循环等操作。对于这种比较复杂的算子,仅在算子级别前加入量化节点来量化,无法精准定位到真正需要量化的操作,量化准确性差。因此,现有技术中,对于这种比较复杂的复合算子,可以先将其在静态图上分解成小粒度的算子,例如将上述GRU算子中包含的多个矩阵乘及张量间的点加、点乘、循环等都作为小算子体现在静 ...
【技术保护点】
【技术特征摘要】
1.一种处理单元,包括:取指令单元,用于从所述处理单元外部的存储器取回计算机指令;指令译码单元,用于对取回的计算机指令进行译码;指令执行单元,用于执行译码后的所述计算机指令,以实现:基于深度学习模型的静态图,确定待量化算子;如果所述待量化算子是非复合算子,在所述非复合算子的前面插入量化节点;如果所述待量化算子是复合算子,在所述复合算子内部确定待量化原子操作,并在确定的待量化原子操作的前面插入量化探针;根据插入了量化节点、或所述复合算子中插入了量化探针的静态图,进行所述深度学习模型的量化。2.根据权利要求1所述的处理单元,其中,所述基于深度学习模型的静态图,确定待量化算子,包括:将特定格式的深度学习模型的静态图转换成通用中间表达的静态图;在所述通用中间表达的静态图上确定待量化算子;所述根据插入了量化节点、或复合算子中插入了量化探针的静态图,进行所述深度学习模型的量化,包括:将所述插入了量化节点、或复合算子中插入了量化探针的静态图转换回所述特定格式进行量化,成为量化后模型。3.根据权利要求2所述的处理单元,其中,在确定待量化算子之后,指令执行单元还用于执行译码后的所述计算机指令,以实现:如果所述待量化算子是非复合算子,在所述非复合算子的前面插入最大值最小值收集节点;如果所述待量化算子是复合算子,在所述复合算子内部确定待量化原子操作,并在确定的待量化原子操作的前面插入最大值最小值收集探针;将插入了所述最大最小值收集节点、所述复合算子中插入了所述最大值最小值收集探针的通用中间表达的静态图,转换回所述特定格式进行校准,分别得到所述待量化非复合算子、所述待量化原子操作的输入的最大值、最小值;其中,所述量化节点是根据所述待量化非复合算子的输入的最大值、最小值确定的,所述量化探针是根据所述待量化原子操作的输入的最大值、最小值确定的。4.根据权利要求2所述的处理单元,其中,所述在所述通用中间表达的静态图上确定待量化算子,包括:在所述通用中间表达的静态图的算子中,根据量化前精度、量化后精度和第一规则,确定待量化算子。5.根据权利要求1所述的处理单元,其中,所述在所述复合算子内部确定待量化原子操作,包括:在所述复合算子内部,根据量化前精度、量化后精度和第二规则,确定待量化原子操作。6.根据权利要求3所述的处理单元,其中,所述量化节点通过如下方式确定:根据所述待量化非复合算子的输入的最大值、最小值,确定待量化非复合算子量化因素;
根据所述待量化非复合算子量化因素,生成量化节点。7.根据权利要求3所述的处理单元,其中,所述量化探针通过如下方式确定:根据所述待量化原子操作的输入的最大值、最小值,确定待量化原子操作量化因素;根据所述待量化原子操作量化因素,生成量化探针。8.根据权利要求3所述的处理单元,其中,所述将插入了所述最大最小值收集节点、所述复合算子中插入了所述最大值最小值收集探针的通用中间表达的静态图,转换回所述特定格式进行校准,分别得到所述待量化非复合算子、所述待量化原子操作的输入的最大值、最小值,包括:将插入了所述最大最小值收集节点、所述复合算子中插入了所述最大值最小值收集探针的通用中间表达的静态图,转换回所述特定格式的深度学习模型;接收校准数据集,以便利用推理脚本将所述校准数据集应用于转换回的特定格式的深度学习模型,其中,所述最大最小值收集节点得到所述待量化非复合算子的输入的最大值、最小值,所述最大值最小值收集探针得到所述待量化原子操作的输入的最大值、最小值。9.根据权利要求1所述的处理单元,其中,在根据插入了量化节点、或复合算子中插入了量化探针的静态图,进行所述深度学习模型的量化之后,所述指令执行单元还用于执行译码后的所述计算机指令,以实现:将量化后模型按照加速单元支...
【专利技术属性】
技术研发人员:李书森,沈正海,何军,赵晓辉,
申请(专利权)人:平头哥上海半导体技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。