用于并行计算系统的处理设备和用于执行集合操作的方法技术方案

技术编号:32204479 阅读:14 留言:0更新日期:2022-02-09 17:09
本公开内容涉及包括多个处理设备的并行计算系统,所述多个处理设备用于以减小的延迟执行包括集合操作的应用。每个处理设备被配置成:获取局部结果,其中,集合操作的全局结果取决于多个处理设备的局部结果;以及如果满足下述条件,则将该处理设备的局部结果分发至其他处理设备中的一个或更多个:确定全局结果仅基于该处理设备的局部结果;或者全局结果仅基于该处理设备的局部结果的可能性大于可能性阈值;或者确定全局结果仅基于该处理设备的局部结果和多个处理设备中的另外的处理设备的另外的局部结果。外的局部结果。外的局部结果。

【技术实现步骤摘要】
【国外来华专利技术】用于并行计算系统的处理设备和用于执行集合操作的方法


[0001]本公开内容总体上涉及数据处理。更具体地,本公开内容涉及用于并行计算系统的处理设备以及相应的方法,该并行计算系统包括用于执行集合操作的多个这样的处理设备。

技术介绍

[0002]集合操作(collective operation)已经成为并行计算框架的重要部分,集合操作描述了在并行计算系统中通信和计算的公用模式,在该公用模式下,向多个处理设备(也被称为处理节点)同时发送数据以及/或者从多个处理设备同时接收数据。由于集合操作通常需要来自并行计算系统的所有N个处理设备的通信,因此可能需要高达N2个通信步骤,从而导致涉及大量处理设备的集合操作的大的延迟。

技术实现思路

[0003]本公开内容的目的是提供一种用于并行计算系统的处理设备以及相应的并行计算方法,该并行计算系统包括用于以减小的延迟执行集合操作的多个处理设备。
[0004]通过独立权利要求的主题实现前述目的和其他目的。根据从属权利要求、说明书和附图,另外的实现形式是明显的。
[0005]根据第一方面,提供了一种用于并行计算系统的处理设备,其中,该并行计算系统包括多个处理设备,所述多个处理设备用于执行包括一个或更多个集合操作的应用。该处理设备被配置成:获取局部处理结果,其中,集合操作的全局处理结果取决于多个处理设备的局部处理结果。该处理设备还被配置成:如果满足下述条件,则将该处理设备的局部处理结果分发至其他处理设备中的一个或更多个:(a)确定集合操作的全局处理结果仅基于该处理设备的局部处理结果,即,由该处理设备的局部处理结果唯一确定,而与其他处理设备的局部处理结果无关;或者(b)集合操作的全局处理结果仅基于该处理设备的局部处理结果——即,由该处理设备的局部处理结果唯一确定——的可能性大于可能性阈值,或者(c)确定集合操作的全局处理结果仅基于该处理设备的局部处理结果和多个处理设备中的另外的处理设备的另外的局部处理结果,即,由该处理设备的局部处理结果和多个处理设备中的另外的处理设备的另外的局部处理结果唯一确定,而与其他处理设备的局部处理结果无关。如本文所使用的,全局处理结果为集合操作的最终结果,而处理设备的局部处理结果为仅对相应处理设备最初已知的结果。
[0006]因此,有利地,提供了一种用于并行计算系统的用于以减小的延迟执行集合操作的处理设备。
[0007]在第一方面的另外的可能实现形式中,该处理设备还被配置成:只有确定集合操作的全局处理结果仅基于该处理设备的局部处理结果,即,由该处理设备的局部处理结果唯一确定,才向所有其他处理设备广播该处理设备的局部处理结果。
[0008]在第一方面的另外的可能实现形式中,集合操作为:逻辑“与”操作或按位“与”操
作;或者逻辑“或”操作或按位“或”操作。
[0009]在第一方面的另外的可能实现形式中,集合操作为逻辑“异或”操作或按位“异或”操作,其中,该处理设备还被配置成:如果确定集合操作的全局处理结果仅基于该处理设备的局部处理结果和另外的处理设备的另外的局部处理结果,即,由该处理设备的局部处理结果和另外的处理设备的另外的局部处理结果唯一确定,则向其他处理设备广播该处理设备的局部处理结果。
[0010]在第一方面的另外的可能实现形式中,该处理设备还被配置成:从另外的处理设备接收另外的局部处理结果;以及基于该处理设备的局部处理结果和另外的处理设备的另外的局部处理结果,来执行逻辑“异或”操作或按位“异或”操作。
[0011]在第一方面的另外的可能实现形式中,该处理设备被配置成:将该处理设备的局部处理结果分发至其他处理设备的选定子集,以用于仅与其他处理设备的选定子集执行集合操作,其中,针对其他处理设备的选定子集中的每个处理设备,集合操作的全局结果仅基于该处理设备的局部处理结果——即,由该处理设备的局部处理结果唯一确定——的可能性大于可能性阈值。因此,有利地,可以选择仅重要的处理节点以用于执行集合操作,从而进一步改善延迟。
[0012]在第一方面的另外的可能实现形式中,并行计算系统被配置成:在应用的运行时间期间调整选定子集。因此,有利地,可以根据并行计算系统的状态调整重要处理装置的集合。
[0013]在第一方面的另外的可能实现形式中,该处理设备被配置成:针对应用的每个集合操作,存储该集合操作的全局处理结果和/或提供该集合操作的全局处理结果的处理设备的标识符。
[0014]在第一方面的另外的可能实现形式中,该处理设备被配置成:基于局部处理结果与针对应用的一个或更多个先前的集合操作所记录的一个或更多个全局处理结果之间的比较,来确定该集合操作的全局结果仅基于该处理设备的局部处理结果——即,由该处理设备的局部处理结果唯一确定——的可能性。因此,有利地,较早的集合操作的全局处理结果可以用于确定重要处理设备。
[0015]在第一方面的另外的可能实现形式中,集合操作为:用于获得多个处理设备的局部处理结果中的最大值的最大值操作;或者用于获得多个处理设备的局部结果中的最小值的最小值操作。
[0016]在第一方面的另外的可能实现形式中,该处理设备被配置成:运行操作的迭代循环;以及基于取决于集合操作的全局处理结果的条件语句终止该迭代循环,即,退出该迭代循环。
[0017]在第一方面的另外的可能实现形式中,该处理设备被配置成:如果确定集合操作的全局处理结果仅基于该处理设备的局部处理结果,即,由该处理设备的局部处理结果唯一确定,则向所有其他处理设备广播该处理设备的局部处理结果,并且该集合操作的等于局部处理结果的全局处理结果触发该处理设备终止该迭代循环。
[0018]在第一方面的另外的可能实现形式中,该处理设备被配置成:针对该迭代循环,存储在终止该迭代循环之前的迭代次数以及/或者由条件语句限定的用于终止该迭代循环的阈值。
[0019]在第一方面的另外的可能实现形式中,针对迭代循环的每个迭代,该处理设备被配置成:确定在该迭代循环的另外的迭代中满足该迭代循环的条件语句的可能性,其中,该处理设备被配置成:向所有其他处理设备广播该处理设备的局部处理结果;以及如果将在该迭代循环的另外的迭代中满足条件语句的可能性大于可能性阈值,则终止该迭代循环。
[0020]在第一方面的另外的可能实现形式中,处理节点被配置成:基于针对终止一个或更多个先前的迭代循环的所存储的迭代次数,来确定在该迭代循环的另外的迭代中满足该迭代循环的条件语句的可能性。
[0021]在第一方面的另外的可能实现形式中,该处理设备被配置成:如果在该迭代循环的另外的迭代中满足条件语句的可能性大于可能性阈值,则在该迭代循环的另外的迭代中不满足该迭代循环的条件语句的情况下,继续运行该迭代循环。
[0022]在第一方面的另外的可能实现形式中,集合操作是多个局部处理结果的求和操作。
[0023]在第一方面的另外的可能实现形式中,集合操作为:用于在多个处理设备的选定根处理设备处提供全局处理结果的归约操作;或者用于在多个处理设本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于并行计算系统(200)的处理设备(201),其中,所述并行计算系统(200)包括多个处理设备(201),所述多个处理设备(201)用于执行包括一个或更多个集合操作的应用,其中,所述处理设备(201)被配置成:获取局部处理结果,其中,集合操作的全局处理结果取决于所述多个处理设备(201)的所述局部处理结果;以及如果满足下述条件,则将所述处理设备(201)的所述局部处理结果分发至其他处理设备(201)中的一个或更多个:(a)确定所述集合操作的所述全局处理结果仅基于所述处理设备(201)的所述局部处理结果;或者(b)所述集合操作的所述全局处理结果仅基于所述处理设备(201)的所述局部处理结果的可能性大于可能性阈值;或者(c)确定所述集合操作的所述全局处理结果仅基于所述处理设备(201)的所述局部处理结果和所述多个处理设备(201)中的另外的处理设备(201)的另外的局部处理结果。2.根据权利要求1所述的处理设备(201),还被配置成:如果确定所述集合操作的所述全局处理结果基于所述处理设备(201)的所述局部处理结果,则向所述其他处理设备(201)广播所述处理设备(201)的所述局部处理结果。3.根据权利要求2所述的处理设备(201),其中,所述集合操作为:逻辑“与”操作或按位“与”操作;或者逻辑“或”操作或按位“或”操作。4.根据权利要求1所述的处理设备(201),其中,所述集合操作为逻辑“异或”操作或按位“异或”操作,并且其中,所述处理设备(201)还被配置成:如果确定所述集合操作的所述全局处理结果仅基于所述处理设备(201)的所述局部处理结果和所述另外的处理设备(201)的所述另外的局部处理结果,则向所述其他处理设备(201)广播所述处理设备(201)的所述局部处理结果。5.根据权利要求4所述的处理设备(201),还被配置成:从所述另外的处理设备(201)接收所述另外的局部处理结果;以及基于所述处理设备(201)的所述局部处理结果和所述另外的处理设备(201)的所述另外的局部处理结果,来执行逻辑“异或”操作或按位“异或”操作。6.根据权利要求1所述的处理设备(201),还被配置成:将所述处理设备(201)的所述局部处理结果分发至所述其他处理设备(201)的选定子集(203),以用于与所述其他处理设备(201)的所述选定子集(203)执行所述集合操作,其中,针对所述其他处理设备(201)的所述选定子集(203)中的每个处理设备(201),所述集合操作的所述全局结果仅基于所述处理设备(201)的所述局部处理结果的可能性大于可能性阈值。7.根据权利要求6所述的处理设备(201),其中,所述并行计算系统(200)被配置成:在所述应用的运行时间期间调整所述选定子集(203)。8.根据权利要求6或7所述的处理设备(201),还被配置成:针对所述应用的每个集合操作,存储所述集合操作的所述全局处理结果和/或提供所述集合操作的所述全局处理结果的所述处理设备(201)的标识符。9.根据权利要求8所述的处理设备(201),还被配置成:基于所述局部处理结果与针对所述应用的一个或更多个先前的集合操作所存储的一个或更多个全局处理结果之间的比
较,来确定所述集合操作的所述全局结果仅基于所述处理设备(201)的所述局部处理结果的可能性。10.根据权利要求6至9中任一项所述的处理设备(201),其中,所述集合操作为:用于获得所述多个处理设备(201)的所述局部处理结果中的最大值的...

【专利技术属性】
技术研发人员:索拉尔
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1