[发明专利]计算图的计算机辅助并行化有效
申请号: | 200710186316.4 | 申请日: | 2004-06-22 |
公开(公告)号: | CN101165650A | 公开(公告)日: | 2008-04-23 |
发明(设计)人: | 克雷格·W.·斯坦菲尔 | 申请(专利权)人: | AB开元软件公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 隆天国际知识产权代理有限公司 | 代理人: | 张龙哺 |
地址: | 美国马*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 计算 计算机辅助 并行 | ||
本申请是申请日为2004年6月22日、申请号为200480024358.2、发明名称为“计算图的计算机辅助并行化”的发明专利申请的分案申请。
交叉参考
本申请要求2003年6月25日提交的美国临时专利申请No.60/482,391的优先权,在此通过参考援引该申请的全部内容。
技术领域
本发明涉及数据的并行处理,特别涉及并行计算图(computation graph)的计算机辅助设计(computer-aided specification)。
背景技术
通常,可将复杂计算表示为流过有向图的数据流,其中计算组件与图的顶点关联,并且组件之间的数据流对应于图的链接(弧,边)。在名称为“执行用图表示的计算”的美国专利No.5,966,072中描述了实现这种基于图的计算系统。
参照图1A,计算图100的实例包括输入文件110和输出文件140。输入文件110是一系列作业项(work element)的源,所述作业项例如数据记录,各关联于事务处理系统中不同的事务。每个作业项先由组件A120处理,接着在串行链路125上传送,然后由组件B130处理。组件B的输出存储在输出文件140中。
期望利用单个组件的多个实体(instance)来实现计算图。例如,组件的每个实体可以拥有各自不同的处理器,从而实现使计算能力全面提高的谷粒平行性(coarse-grain parallelism)。参照图1B,并行计算图101的设计包括输入文件110和输出文件140,这一点与串行计算图100相同。并行组件A121表示组件A120的m个并行排列的实体,并且并行组件B131表示组件B130的m个并行表示的实体。并行链路126连接并行组件A121和并行组件B131。在并行计算图的表示中,例如图1B所示的并行计算图,用粗线表示并行组件,并在组件旁边设置表示并行度(例如,图1B中的“m”)的可选标识符。
参照图1C,并行计算图101以显式(explicit)串行形式来表示,在该图中并行排列组件A120的m个实体(标记为A1到Am)。为了从输入文件110分配多个作业项,在输入文件110和形成并行组件A121的组件A的m个实体之间插入1∶m分割单元(partition element)115,其中并行组件A121包括组件A120的m个实体。分割单元115在一个输入端接收多个作业项,并以例如循环的方式将每个输入发送到m个输出端之一。m∶1集合单元(gather element)135在m条输入线上接收m个组件B120的输出,并且根据例如输入的到达时间而将所述输入合并,以输出到输出文件140。在该实例中,将并行链路126表示为连接组件A和组件B相应实体的串行链路的并行组合。
发明内容
一般,在一个方案中,本发明的特征在于提供一种自动设定并行计算图的方法。接受第一计算图的设计。该图具有通过链路单元连接的数据处理单元,并且每个链路单元与上游数据处理单元和下游数据处理单元相关联。对于一个链路单元或多个链路单元中的每一个链路单元,根据与链路单元相关的上游和/或下游数据处理单元的特性来确定该链路单元的数据处理特性。
可将每个数据处理单元表示为计算图的顶点,并且可将每个链路单元表示为计算图的弧。
一般,在另一方案中,本发明的特征在于提供一种用于设定具有一个或多个并行组件的计算图的自动方法。该方法包括使用元数据定义下游并行组件数据流的输入需求的特性,并设定用于处理数据流的至少一个功能单元,以满足下游并行组件的输入需求。
该功能单元可以包括分割单元。分割单元可以包括,例如,哈希分割单元、循环分割单元或广播单元。
功能单元可以包括集合单元,还可以包括排序单元。
互联网络可以链接所述功能单元。
该方法还可包括基于组件的元数据确定组件输出数据流的特性。这些特性也可以或另外基于组件的一个或多个输入流的特性。确定输出流的特性的处理可以包括应用一个或多个规则,和/或可以包括执行一个或多个程序语句。
一般,在另一实例中,本发明的特征在于提供一种使计算图并行化的方法。接受计算图的设计。计算图包括由链路连接的第一组件和第二组件。同样接受对该第一组件和/或第二组件的并行度的设计。形成对应于串行链路的组件间链路,其具有至少基于设定的并行度的并行特性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于AB开元软件公司,未经AB开元软件公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710186316.4/2.html,转载请声明来源钻瓜专利网。