加速搬移数据的设备及方法技术

技术编号:38329303 阅读:6 留言:0更新日期:2023-07-29 09:12
本披露涉及加速搬移数据的人工智能加速器、集成电路装置、板卡、方法、可读存储介质、计算机程序产品与计算机装置,其中本披露的计算装置包括在集成电路装置中,该集成电路装置包括通用互联接口和其他处理装置。计算装置与其他处理装置进行交互,共同完成用户指定的计算操作。集成电路装置还可以包括存储装置,存储装置分别与计算装置和其他处理装置连接,用于计算装置和其他处理装置的数据存储。计算装置和其他处理装置的数据存储。计算装置和其他处理装置的数据存储。

【技术实现步骤摘要】
加速搬移数据的设备及方法


[0001]本披露一般地涉及计算机领域。更具体地,本披露涉及加速搬移数据的人工智能加速器、集成电路装置、板卡、方法、可读存储介质、计算机程序产品与计算机装置。

技术介绍

[0002]卷积运算是一种神经网络的通用和基础运算,在当前的卷积神经网络里起到了不可替代的关键作用。但是卷积运算计算量较大,对人工智能加速器的硬件性能的要求较高。
[0003]一般来说,人工智能加速器设计有特定硬件专职卷积任务。在进行卷积运算时,需要对待处理数据进行运算,导致大量的数据被重复搬移,尤其是当步长(stride)大于1时,因为跳着取数,以至于数据不连续,搬运数据规模过小,导致严重的带宽下降,因此如何提高数据搬移带宽是本领域技术人员急需解决的技术问题。

技术实现思路

[0004]为了至少解决如上所提到的一个或多个技术问题,本披露在多个方面中提出了加速搬移数据的人工智能加速器、集成电路装置、板卡、方法、可读存储介质、计算机程序产品与计算机装置。
[0005]在第一方面中,本披露提供一种重组输入数据以加速搬移的人工智能加速器,包括:处理模块、暂存模块、存储模块与运算模块。处理模块用以当步长大于1且大于原搬运数据规模时,以步长减一的间隔采样输入数据中的多个数据块,并重组输入数据,其中多个数据块相邻排列以形成第一数据群;暂存模块用以存储重组后的输入数据;存储模块自暂存模块优先将第一数据群依重组后输入数据的搬运数据规模搬移存储;运算模块自存储模块获取第一数据群进行运算。
[0006]在第二方面中,本披露提供一种人工智能加速器,包括:处理模块、存储模块与运算模块。处理模块用以:当步长大于1且大于原搬运数据规模时,以步长减一的间隔采样输入数据中的多个数据块;重组输入数据,其中多个数据块相邻排列以形成数据群;对重组后的输入数据进行im2col展开。存储模块基于重组后输入数据的搬运数据规模将数据群依im2col展开后的顺序搬移存储。运算模块自存储模块获取数据群进行矩阵乘运算。
[0007]在第三方面中,本披露提供一种集成电路装置,包括上述的人工智能加速器,并提供一种板卡,包括上述的集成电路装置。
[0008]在第四方面中,本披露提供一种重组输入数据以加速搬移的方法,包括:当步长大于1且大于原搬运数据规模时,以步长减一的间隔采样输入数据中的多个数据块;重组输入数据,其中多个数据块相邻排列以形成第一数据群;依重组后输入数据的搬运数据规模优先搬移第一数据群;对搬移后的第一数据群进行运算。
[0009]在第五方面中,本披露提供一种计算机可读存储介质,其上存储有在人工智能加速器中处理输入数据的计算机程序代码,当计算机程序代码由处理装置运行时,执行上述的方法。
[0010]在第六方面中,本披露提供一种计算机程序产品,包括在人工智能加速器中处理输入数据的计算机程序,计算机程序被处理器执行时实现上述方法的步骤。
[0011]在第七方面中,本披露提供一种计算机装置,包括存储器、处理器及存储在存储器上的计算机程序,处理器执行计算机程序以实现上述方法的步骤。
[0012]由于重组后输入数据的搬运数据规模大于原搬运数据规模,因此基于重组后输入数据的搬运数据规模搬移数据,提高数据搬运带宽,进而实现加速搬移、有效利用输入输出带宽的技术效果。
附图说明
[0013]通过参考附图阅读下文的详细描述,本披露示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本披露的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
[0014]图1是示出本披露实施例的板卡的结构图;
[0015]图2是示出本披露实施例的集成电路装置的结构图;
[0016]图3是示出本披露实施例的计算装置的内部结构示意图;
[0017]图4是示出本披露实施例的处理器核的内部结构示意图;
[0018]图5是示出当一个处理器核欲将数据写入至另一个集群的处理器核时的示意图;
[0019]图6与图7示出im2col的操作示意图;
[0020]图8是示出维度为NCHW的输入数据执行im2col的示意图;
[0021]图9是示出本披露实施例的输入数据的示意图;
[0022]图10是示出本披露实施例以重组后的输入数据进行im2col展开的示意图;
[0001]图11是示出本披露另一个实施例实现矩阵乘运算的流程图;
[0002]图12是示出本披露另一个实施例对神经元数据进行重组的示意图。
具体实施方式
[0003]下面将结合本披露实施例中的附图,对本披露实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本披露一部分实施例,而不是全部的实施例。基于本披露中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本披露保护的范围。
[0004]应当理解,本披露的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0005]还应当理解,在此本披露说明书中所使用的术语仅仅是出于描述特定实施例的目的,而并不意在限定本披露。如在本披露说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本披露说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0006]如在本说明书和权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。
[0007]下面结合附图来详细描述本披露的具体实施方式。
[0008]图1示出本披露实施例的一种板卡10的结构示意图。如图1所示,板卡10包括芯片101,其是一种系统级芯片(System on Chip,SoC),或称片上系统,集成有一个或多个组合处理装置,组合处理装置是一种人工智能运算单元,用以支持各类深度学习和机器学习算法,满足计算机视觉、语音、自然语言处理、数据挖掘等领域复杂场景下的智能处理需求。特别是深度学习技术大量应用在云端智能领域,云端智能应用的一个显著特点是输入数据量大,对平台的存储能力和计算能力有很高的要求,此实施例的板卡10适用在云端智能应用,具有庞大的片外存储、片上存储和大量的计算能力。
[0009]芯片101通过对外接口装置102与外部设备103相连接。外部设备103例如是服务器、计算机、摄像头、显示器、鼠标、键盘、网卡或wifi接口等。待处理的数据可以由外部设备103通过对外接口装置102传递至芯片101。芯片101的计算结果可以经由对外接口装置102传送回外部设备103。根据不同的应用场景,对外接口装置102可以具有本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种重组输入数据以加速搬移的人工智能加速器,其特征在于,包括:处理模块,用以:当步长大于1且大于原搬运数据规模时,以所述步长减一的间隔采样所述输入数据中的多个数据块;重组所述输入数据,其中所述多个数据块相邻排列以形成第一数据群;暂存模块,用以存储重组后的输入数据;存储模块,自所述暂存模块优先将所述第一数据群依重组后输入数据的搬运数据规模搬移存储;运算模块,自所述存储模块获取所述第一数据群进行运算。2.根据权利要求1所述的人工智能加速器,其中所述处理模块基于所述多个数据块在所述输入数据中的次序相邻排列。3.根据权利要求1所述的人工智能加速器,其中所述处理模块在重组所述输入数据时,将所述输入数据中非所述第一数据群的其余数据块相邻排列,以形成第二数据群。4.根据权利要求3所述的人工智能加速器,其中所述处理模块在重组所述输入数据时,将所述第一数据群排列在所述第二数据群前。5.根据权利要求1所述的人工智能加速器,其中所述存储模块在将所述第一数据群搬移至所述存储模块后,自所述暂存模块将所述第二数据群依重组后输入数据的搬运数据规模搬移至所述存储模块。6.根据权利要求5所述的人工智能加速器,其中所述运算模块基于重组后输入数据的搬运数据规模对所述第一数据群进行运算后,自所述存储模块基于重组后输入数据的搬运数据规模获取所述第二数据群进行运算。7.根据权利要求5所述的人工智能加速器,其中当所述第一数据群的数据量非带宽的整数倍时,所述存储模块基于以下顺序搬移所述输入数据至所述存储模块:所述第一数据群中数据量为所述带宽最大倍数的数据块;所述第二数据群中数据量为所述带宽最大倍数的数据块;所述第一数据群中尚未搬移的数据块。8.根据权利要求1所述的人工智能加速器,其中当所述输入数据涉及im2col操作时,所述处理模块启动重组所述输入数据。9.根据权利要求1所述的人工智能加速器,其中重组后输入数据的搬运数据规模为计算所需的最大数据长度。10.根据权利要求1所述的人工智能加速器,其中当所述输入数据的高维尺寸大于原搬运数据规模时,所述处理模块重组所述输入数据。11.一种人工智能加速器,其特征在于包括:处理模块,用以:当步长大于1且大于原搬运数据规模时,以所述步长减一的间隔采样输入数据中的多个数据块;重组所述输入数据,其中所述多个数据块相邻排列以形成数据群;对重组后的输入数据进行im2col展开;存储模块,根据重组后输入数据的搬运数据规模将所述数据群依im2col展开后的顺...

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

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

1