数据处理装置、数据处理方法及相关产品制造方法及图纸

技术编号:31627122 阅读:13 留言:0更新日期:2021-12-29 19:04
本披露公开了一种数据处理装置、利用数据处理装置执行分块指令的数据处理方法及相关产品。该数据处理装置可以作为计算装置包括在组合处理装置中,该组合处理装置还可以包括接口装置和其他处理装置。该计算装置与其他处理装置进行交互,共同完成用户指定的计算操作。组合处理装置还可以包括存储装置,该存储装置分别与计算装置和其他处理装置连接,用于存储该计算装置和其他处理装置的数据。本披露的方案实现了小卷积运算中的数据拆分存储,提高了运算处理效率。运算处理效率。运算处理效率。

【技术实现步骤摘要】
数据处理装置、数据处理方法及相关产品


[0001]本披露一般地涉及数据处理领域。更具体地,本披露涉及一种数据处理装置、利用数据处理装置对数据执行分块指令的数据处理方法、芯片和板卡。

技术介绍

[0002]目前,深度学习(Deep Learning)已经成为机器学习中的重要分支,也大力助推着人工智能(AI)的发展。深度学习的核心技术——深度神经网络(DNN)已在诸多行业有着广泛的应用。
[0003]神经网络是人工智能、深度学习中最为关键的技术之一,其中卷积神经网络(Convolution Neural Network,CNN)是最为重要的一种网络类型。卷积神经网络中最为关键的计算即为卷积层(Conv layer)的卷积运算(Convolution Operation)。卷积层的功能是对输入数据进行特征提取,通过多层卷积,能够抽取复杂特征,以保证网络具有足够的表达能力和泛化能力。神经网络模型中包含了大量的、各种类型的卷积运算,卷积运算的计算性能极大地影响整个神经网络模型的计算性能。当神经网络模型应用于不同领域时,例如语音识别、机器翻译、图像处理等等,其对应的输入特征图和权值的各个维度大小可能各有不同。为了充分利用深度学习处理器的硬件优势,需要针对不同规模的、不同类型的卷积运算进行优化,以提高执行神经网络模型的计算性能。

技术实现思路

[0004]为了至少解决如上所提到的一个或多个技术问题,本披露在多个方面中提出了一种数据处理装置,其通过对数据执行分块指令,可以使得各种维度尺寸的数据能够适配卷积运算的硬件,从而提高卷积运算的计算效率。本披露实施例的卷积运算可以是各种神经网络模型中的运算,这些神经网络模型可以应用于各种领域,诸如图像处理、语音处理、文本处理等等,这些处理例如可以包括但不限于识别和分类。
[0005]在第一方面中,本披露实施例提供了一种数据处理装置,包括控制电路、第一存储电路和第二存储电路,其中:所述第一存储电路用于存储处理前的输入数据;所述第二存储电路用于存储处理后的输出数据;以及所述控制电路用于根据所述处理前的输入数据的最低存储维度的大小,确定优选对齐值;根据所述优选对齐值配置分块指令;以及执行所述分块指令,以将按照第一维度存储顺序存储在第一存储电路上的输入数据以拆分单元为单位进行拆分并存储为第二存储电路上的输出数据,其中在所述第二存储电路上,各个拆分单元内按照第二维度存储顺序存储,拆分单元之间按照第三维度存储顺序存储。
[0006]在第二方面中,本披露实施例提供了一种芯片,其包括前述第一方面的数据处理装置。
[0007]在第三方面中,本披露实施例提供了一种板卡,其包括前述第二方面的芯片。
[0008]在第四方面中,本披露实施例提供了一种利用前述第一方面的数据处理装置对输入数据执行分块指令的数据处理方法。
[0009]通过如上所提供的数据处理装置、芯片、板卡以及由数据处理装置执行分块指令的数据处理方法,本披露实施例的方案针对各种卷积拆分方案中的数据,尤其是针对通道数较少的数据进行优化,提高分块处理的处理效率,以适应硬件运算装置的处理能力,从而充分利用多个从处理电路的并行处理能力,可以有效提高卷积运算的运算效率。
附图说明
[0010]通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
[0011]图1示出本披露实施例的板卡的结构图;
[0012]图2示出本披露实施例的组合处理装置的结构图;
[0013]图3a示出本披露实施例的单核计算装置的处理器核的内部结构示意图;
[0014]图3b示出本披露实施例的多核计算装置的内部结构简化示意图;
[0015]图4示出可以应用本披露实施例的示例性卷积运算原理示例;
[0016]图5示出了根据本披露实施例的计算装置的示意性结构框图;
[0017]图6示出了根据本披露实施例的一种示例性数据存储顺序;
[0018]图7a

7c示出了根据本披露实施例的几种示例性分组模式;
[0019]图8示出了根据本披露实施例的输入特征图的示例性拆分示意图;
[0020]图9示出根据本披露实施例的Forward4方案的拆分和存储示意图;
[0021]图10示出了根据本披露实施例的Forward4方案中运算电路的输出点划分示意图;
[0022]图11示出根据本披露实施例的Forward4方案中的单次运算示意图;
[0023]图12示出根据本披露实施例的Forward4方案中的滑动卷积示意图;
[0024]图13示出根据本披露实施例Forward4方案的输出数据格式示意图;
[0025]图14示出根据本披露实施例的整体的数据搬运过程;
[0026]图15示出根据本披露实施例的Trans Tiling的示意性概念图;
[0027]图16示出前后配表的示意图;以及
[0028]图17示出根据本披露实施例的对神经元数据执行分块指令的示意图。
具体实施方式
[0029]下面将结合本披露实施例中的附图,对本披露实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本披露一部分实施例,而不是全部的实施例。基于本披露中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本披露保护的范围。
[0030]应当理解,本披露的权利要求、说明书及附图中可能出现的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。本披露的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0031]还应当理解,在本披露说明书中所使用的术语仅仅是出于描述特定实施例的目
的,而并不意在限定本披露。如在本披露说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本披露说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0032]如在本说明书和权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。
[0033]示例性硬件环境
[0034]图1示出本披露实施例的一种板卡10的结构示意图。如图1所示,板卡10包括芯片101,其是一种系统级芯片(System on Chip,SoC),或称片上系统,集成有一个或多个组合处理装置,组合处理装置是一种人工智能运算单元,用以支持各类深度学习和机器学习算法,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理装置,包括控制电路、第一存储电路和第二存储电路,其中:所述第一存储电路用于存储处理前的输入数据;所述第二存储电路用于存储处理后的输出数据;以及所述控制电路用于:根据所述处理前的输入数据的最低存储维度的大小,确定优选对齐值;根据所述优选对齐值配置分块指令;以及执行所述分块指令,以将按照第一维度存储顺序存储在第一存储电路上的输入数据以拆分单元为单位进行拆分并存储为第二存储电路上的输出数据,其中在所述第二存储电路上,各个拆分单元内按照第二维度存储顺序存储,拆分单元之间按照第三维度存储顺序存储。2.根据权利要求1所述的数据处理装置,其中所述控制电路进一步用于:当所述优选对齐值P小于所述分块指令的基准对齐值M时,将所述输入数据由原形状hi*wi*ci视为优化形状hi*(wi/Ws)*(Ws*ci),其中Ws=M/P,表示从所述输入数据的次低存储维度W拆分Ws倍的数据补至所述最低存储维度C,hi是输入数据的最高存储维度H的大小,wi是次低存储维度W的大小,ci是最低存储维度C的大小。3.根据权利要求2所述的数据处理装置,其中所述拆分单元的形状为CHW=U
Ci
×
U
H
×
U
W
,所述优选对齐值P是U
Ci
的2
n
倍,4.根据权利要求3所述的数据处理装置,其中所述控制电路进一步用于按如下规则根据所述输入数据的最低存储维度大小ci确定所述优选对齐值P:当0<ci≤U
Ci
时,P=U
Ci
,当2
n
*U
Ci
<ci≤2
n+1
*U
Ci
,时,P=2
n+1
*U
Ci
,当时,P=M。5.根据权利要求3

4任一所述的数据处理装置,其中所述控制电路进一步用于按如下配置分块指令:当P≠U
Ci
时,根据所述优选对齐值P,设置分块指令的前配表,所述前配表用于将所述分块指令的输入张量的内层最低维度数据按照所述前配表的指示进行重排。6.根据权利要求5所述的数据处理装置,其中所述控制电路进一步用于按如下设置所述前配表:将所述分块指令的输入张量的内层最低维度数据转换成按照所述拆分单元的形状对齐,并且每个拆分单元的数据按照所述第一维度存储顺序排列。7.根据权利要求3

6任一所述的数据处理装置,其中所述控制电路进一步用于按如下配置分块指令:设置分块指令的后配表,所述后配表用于将所述分块指令的输出张量的内层最低维度数据按照所述后配表的指示进行重排。8.根据权利要求7所述的数据处理装置,其中所述控制电路进一步用于按如下设置所...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:安徽寒武纪信息科技有限公司
类型:发明
国别省市:

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

1