多核处理器的稀疏均匀性实施制造技术

技术编号:37510475 阅读:8 留言:0更新日期:2023-05-12 15:29
本文公开了涉及并行计算领域的方法和系统。所公开的方法和系统包括用于对用于执行复杂计算的计算节点组实施稀疏均匀性的方法。所公开的方法包括确定操作数数据组中的稀疏分布,以及使用编译器生成用于使用操作数数据组和处理核组来执行复杂计算的指令组。或者,所述方法包含变更所述操作数数据。该方法还包括将该操作数数据组分发到该处理核组,以用于根据该指令组执行复杂计算。对该处理核组之间的稀疏分布进行变更或者对编译器进行编程以均衡该处理核组之间的稀疏分布。衡该处理核组之间的稀疏分布。衡该处理核组之间的稀疏分布。

【技术实现步骤摘要】
多核处理器的稀疏均匀性实施

技术介绍

[0001]机器智能系统代表现代的计算最复杂和能量密集的计算应用之一。由于人工神经网络(ANN)代表了当前使用的大部分机器智能系统,大量的研究和开发已经投入到如何降低ANN执行能耗的方法上。ANN接收输入张量,使用输入张量和网络张量组进行运算,并产生输出张量。输出张量表示响应于输入由网络生成的推断。例如,如果ANN是图像分类器,则输入可以是猫的图像的编码,并输出向量可以是推断,该推断表明图像的主题是猫。这些系统如此耗费资源的原因在于,它们所操作的数据结构通常非常大,并必须在每个数据结构上执行的离散原始计算的数量同样巨大。
[0002]机器智能系统代表了富有挑战性的环境,一方面是所需进行的计算量,另一方面是大数据结构,该大数据结构必须在系统的存储器和计算区域之间移动以便执行那些计算。在长期存储器和系统的执行区域之间的大量数据流是机器智能系统的关键设计挑战。标准ANN的网络数据通常可以包含数十亿的离散数据条目。网络数据可以包括权重向量、滤波向量和基于ANN类型的各种其他类型的数据。网络数据通常被组织成多层,每一层的输出用作下一层的输入。在传统的ANN中,各层是完全连接的,这要求输入向量的每一元素都参与运算,该运算具有权重向量的每一元素。所涉及的运算结果数量非常大。此外,ANN的输入数据、用于ANN的网络数据、以及通过执行ANN的一个层以用作ANN的下一层的输入而生成的执行数据,都需要被保存在存储器中,直到它们被用于下一层中的计算。
[0003]机器智能和计算机科学领域中的研究的发展领域是可以减少执行给定ANN所需的计算量,同时在计算量固定的情况下仍然保持对ANN性能的保真度的方式。在该领域中的方法包括在执行时基于各种因素跳过执行ANN中的特定计算的方法。另外的方法涉及在执行之前通过删减网络执行非必要的网络数据来修改ANN。这些方法通常用诸如“退出”和“删减”等术语来指代,并在ANN的初始训练阶段期间完成,以学习给定网络的适当网络数据。

技术实现思路

[0004]本文公开了与并行计算领域相关的方法和系统。所公开的方法和系统包括用于执行复杂计算的计算节点组实施稀疏均匀性的方法。这些方法包括通过变更复杂计算的操作数数据来测量或增加复杂计算的操作数数据的稀疏的方法。该方法包括其中计算节点组被配置成均衡操作数数据在该计算节点组的计算节点之间的稀疏分布的那些方法。由于复杂计算的操作数数据中稀疏的存在可以导致这种复杂计算所需的计算资源的减少,因此在由计算节点并行执行这种复杂计算期间,这种跨计算节点组的均匀稀疏度的实施可以提高这种计算节点组的并行化性能。
[0005]参考在系统的计算节点之间均衡操作数数据组的稀疏分布来描述本文公开的本专利技术的具体实施例。当参考数据组使用稀疏时,稀疏是指在大得多的不重要(非稀疏的)值集合中具有少量决定性(稀疏的)值的质量。例如,在多数为零值的两个矩阵之间的矩阵乘法运算中,非零值为稀疏值,零值为非稀疏值。在复杂计算的特定类中,例如执行标准ANN,许多组件计算可以被跳过,因为所涉及的数据结构是稀疏的,并与非稀疏值相比,稀疏值对
计算的结果具有更高的影响。这样,在特定应用中,均衡到各个计算节点的稀疏分布将导致可以跳过的计算的更均匀地分布。这又将改进计算节点组的并行化性能,因为以有利于每个计算节点并行执行相等工作负荷的方式分派组件计算。
[0006]本专利技术的具体实施例提供了一种计算机实现的方法。该方法包括确定操作数数据组中的稀疏分布,使用编译器生成用于使用操作数数据组和处理核组来执行复杂计算的指令组,以及将操作数数据组分发到处理核组以根据指令组用于执行复杂计算。在生成指令组时,编译器被编程为利用操作数数据组中的稀疏分布,来均衡处理核组之间的稀疏分布。
[0007]本专利技术的具体实施例提供了一种系统。该系统包括处理核组、编译器,该编译器被编程为:(i)确定操作数数据组的稀疏分布;以及(ii)使用该操作数数据组和该处理核组来生成用于执行复杂计算的指令组,以及网络,该网络被编程为将该操作数数据组分发到该处理核组以用于根据该指令组执行复杂计算。在生成指令组时,编译器还被编程为利用操作数数据组中的稀疏分布来均衡处理核组之间的稀疏分布。
[0008]本专利技术的具体实施例提供了一种系统。该系统包括:用于确定操作数数据组中的稀疏分布的装置;用于使用该操作数数据组和处理核组来生成用于执行复杂计算的指令组的装置;以及用于将该操作数数据组分布到该处理核组以用于根据该处理核组来执行该复杂计算的装置说明书。用于生成的装置在生成指令组时利用操作数数据组中的稀疏分布来均衡处理核组之间的稀疏分布。
[0009]本专利技术的具体实施例提供了一种计算机实现的方法。该方法包括变更操作数数据组以增加该操作数数据组的稀疏分布中的稀疏度,其中该操作数数据组用于复杂计算,以及将该操作数数据组分布到处理核组以执行复杂计算。该变更均衡了该处理核组之间的稀疏分布。
[0010]本专利技术的具体实施例提供了一种系统。该系统包括处理核组以及至少一个控制器,该至少一个控制器被编程为变更操作数数据组以增加操作数数据组的稀疏分布中的稀疏度。该操作数数据组用于复杂计算。该系统包括被编程为将该操作数数据组分发到该处理核组以用于执行复杂计算的网络。该变更均衡了该处理核组之间的稀疏分布。
[0011]本专利技术的具体实施例提供了一种系统。该系统包括处理核组和用于变更操作数数据组以增加该操作数数据组的稀疏分布中的稀疏度的装置。该操作数数据组用于复杂计算。该系统还包括用于将该操作数数据组分发到处理核组以执行复杂计算的装置。用于变更的装置均衡该处理核组之间的稀疏分布。
附图说明
[0012]图1图示了根据本文公开的本专利技术的具体实施例以均衡计算节点之间的稀疏分布的方式分布具有稀疏分布的操作数数据组的概念流程图。
[0013]图2示出了根据本文公开的本专利技术的具体实施例的方法组的流程图。
[0014]图3示出了两个概念流程图,以示出根据本文公开的本专利技术的具体实施例的用于跨计算节点组均衡操作数数据组的稀疏分布的不同方法。
[0015]图4示出了根据本专利技术的具体实施例的编译器的框图。
[0016]图5示出了根据本专利技术的具体实施例的能够执行图2的方法的系统的示例。
具体实施方式
[0017]本文详细公开了根据以上概述的与并行计算领域相关的方法和系统。在本部分中公开的方法和系统是本专利技术的非限制性实施例,仅出于解释的目的而提供,并不应当用于限制本专利技术的全部范围。应当理解,所公开的实施例可以彼此重叠或彼此不重叠。因此,一个实施例或其具体实施例的一部分可以落入或不落入另一个或其具体实施例的范围内,反之亦然。来自不同方面的不同实施例可以被组合或单独地实施。在本专利技术的宽泛框架内示出的代表性实施例的许多不同组合和子组合对于本领域技术人员而言可能是显而易见的,但未明确示出或描述,不应被解释为排除。
[0018]参考并行执行复杂计算的多核处理器中的处理核组来描述本文公开的本专利技术的具体实施例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机实现的方法,包括:确定操作数数据组中的稀疏分布;使用编译器生成指令组,所述指令组用于使用所述操作数数据组和处理核组来执行复杂计算;以及将所述操作数数据组分发到所述处理核组,以根据所述指令组用于执行所述复杂计算;其中,当生成所述指令组时,所述编译器被编程为利用所述操作数数据组中的稀疏分布,来均衡所述处理核组之间的稀疏分布。2.根据权利要求1所述的计算机实现的方法,其中:通过评估所述操作数数据组并测量所述稀疏分布来确定所述稀疏分布;以及在所述稀疏分布确定之前,所述稀疏分布是所述操作数数据组的属性。3.根据权利要求1所述的计算机实现的方法,其中:通过变更所述操作数数据组来进行所述稀疏分布的确定;以及所述稀疏分布是通过所述稀疏分布的确定而产生所述操作数数据组的属性。4.根据权利要求1所述的计算机实现的方法,其中:通过生成稀疏组诱导命令以在所述指令组的执行期间变更所述操作数数据组,来进行所述稀疏分布的确定;以及所述稀疏分布是在执行所述指令组期间产生所述操作数数据组的属性。5.根据权利要求1所述的计算机实现的方法,其中:所述处理核组被设计成与指令组一起操作;所述编译器的目标语言是所述指令组;以及所述编译器的源语言是源编码。6.根据权利要求5所述的计算机实现的方法,其中:所述复杂计算的源编码描述包括操作;需要所述指令组中的至少两个指令来执行所述操作;以及在界定用于所述至少两个指令的操作数时,所述编译器被编程为以利用所述操作数数据组中的稀疏分布。7.根据权利要求1所述的计算机实现的方法,其中:当利用所述处理核组中的处理核放置来自所述指令组的指令时,所述编译器被编程为利用所述操作数数据组中的稀疏分布。8.根据权利要求1所述的计算机实现的方法,其中:当将来自具有处理核的指令组的指令放置在所述处理核心组中时,所述编译器被编程为利用所述操作数数据组中的稀疏分布。9.根据权利要求1所述的计算机实现的方法,其中:所述复杂计算是人工神经网络的执行;所述操作数数据组包括网络数据和执行数据;以及在生成所述指令组时,所述编译器被编程为利用所述网络数据和执行数据中的稀疏分布,来均衡所述处理核组之间的稀疏分布。10.根据权利要求1所述的计算机实现的方法,其中:
所述复杂计算是人工神经网络的执行;所述操作数数据组包括网络数据;通过变更所述操作数数据组来进行稀疏分布的确定;以及所述稀疏分布是通过所述稀疏分布的确定而产生所述操作数数据组的属性。11.根据权利要求1所述的计算机实现的方法,其中:所述复杂计算...

【专利技术属性】
技术研发人员:L
申请(专利权)人:滕斯托伦特股份有限公司
类型:发明
国别省市:

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

1