[发明专利]用于开发在并行计算机中执行的集合操作的方法和装置有效
申请号: | 201310049230.2 | 申请日: | 2013-02-07 |
公开(公告)号: | CN103246507B | 公开(公告)日: | 2017-03-01 |
发明(设计)人: | C.J.阿彻;J.E.凯里;P.J.桑德斯;B.E.史密斯 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/38 |
代理公司: | 北京市柳沈律师事务所11105 | 代理人: | 张丽新 |
地址: | 美国纽*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 开发 并行 计算机 执行 集合 操作 方法 装置 | ||
技术领域
本发明的领域是数据处理,更具体地,是用于开发在并行计算机中执行的集合操作的方法、装置和产品。
背景技术
1948年EDVAC计算机系统的开发通常被称为计算机时代的开始。自从那时起,计算机系统已经发展为极其复杂的设备。当今的计算机比诸如EDVAC的早期系统复杂得多。计算机系统通常包括硬件和软件组件、应用程序、操作系统、处理器、总线、存储器、输入/输出设备等等的组合。随着半导体处理和计算机架构的进步将计算机的性能推向越来越高,更复杂的计算机软件已经发展为利用更高性能的硬件,得到比仅几年前强大得多的当今的计算机系统。
并行计算是已经经历进步的计算机技术领域。并行计算是同一个任务(被分割并具体适配)在多个处理器上的同时执行以便更快地获得结果。并行计算是基于以下事实:解决问题的处理通常可以被划分为更小的任务,这些更小的任务可以通过某些协调而同时执行。
并行计算机执行并行算法。并行算法可以被分割以在许多不同的处理设备上每次一段地执行,然后最终再收回到一起以得到数据处理结果。一些算法容易划分成段(piece)。划分检查从1到十万的所有数字以查看哪些是质数的任务可以通过例如向每个可用的处理器分配数字的子集然后将肯定结果的列表放回在一起来进行。在此说明书中,执行并行程序的各个段的多个处理设备被称为“计算节点”。并行计算机由计算节点以及其他处理节点构成,其他处理节点包括例如输入/输出(“I/O”)节点以及服务节点。
并行算法是有价值的,因为由于现代处理器工作的方式,经由并行算法比经由串行(非并行)算法更快地进行某些种类的大的计算任务。构造具有单个快速处理器的计算机远比构造具有相同吞吐量的具有许多慢处理器的计算机难得多。还存在对串行处理器的潜在速度的某些理论限制。另一方面,每个并行算法具有串行部分,因此串行算法具有饱和点。在该点之后添加更多的处理器不能产生任何更多的吞吐量,而仅仅是增加开销(overhead)和成本。
并行算法还被设计用于优化更多一个资源、即并行计算机的节点之间的数据通信要求。存在两种并行处理器通信方式,共享存储器或者消息传递。共享存储器处理需要对于数据的另外锁定并且强加了另外的处理器和总线循环的开销,并且还串行化该算法的某些部分。
消息传递处理使用高速数据通信网络和消息缓存,但是此通信在数据通信网络上添加了传送开销以及消息缓存的另外的存储器需要和节点之间的数据通信中的等待时间。并行计算机的设计使用专门设计的数据通信链接以便通信开销将是小的,但是决定流量的是并行算法。
许多数据通信网络架构被用于并行计算机中的节点之间的消息传递。计算节点可以在网络中被组织为例如“环状结构(torus)”或者“网状结构(mesh)”。而且,计算节点在网络中可以被组织为树。环状网络(mesh network)用环绕的链接来连接三维网状结构中的节点。每个节点通过该环状网络连接到其六个相邻者,每个节点通过其在网状结构中的x、y、z坐标被寻址。以这样的方式,环状网络使其自身适合于点对点操作。在树状网络中,节点通常连接为二叉树:每个节点具有一个双亲和两个孩子(尽管依赖于硬件配置,一些节点可能仅具有0个孩子或者一个孩子)。尽管树状网络通常在点对点通信中效率低,但是树状网络提供高带宽和以及对于某些集合(collective)操作、其中所有计算节点同时参与的消息传递操作诸如例如全聚集(allgather)操作的低等待时间。在使用环状网络和树状网络的计算机中,这两个网络通常彼此独立地实现,具有分离的布线电路、分离的物理链接以及分离的消息缓冲器。
发明内容
在本说明书中公开了开发在并行计算机执行的集合操作的方法、装置和产品。该并行计算机包括通过一个或多个数据通信网络耦接用于数据通信的多个计算节点。根据本发明的实施例在这样的并行计算机中开发集合操作包括:由集合开发工具接收要开发的目标集合操作的详细说明;由该集合开发工具接收该目标集合操作将在其中执行的并行计算机的计算机硬件特性的详细说明;由该集合开发工具依赖于该计算机硬件特性的详细说明以及指定基于计算机硬件特性的集合基元的选择标准的预定规则集,自动地、无需用户交互地、对于该目标集合操作的每个阶段重复地选择集合基元;以及由该集合开发工具依赖于所选的集合基元产生目标集合操作。
本发明的以上以及其他目标、特征和优点将从如在附图中例示的本发明的示例实施例的以下更具体的描述而显而易见,附图中类似的参考标记一般表示本发明的示例实施例的类似的部分。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310049230.2/2.html,转载请声明来源钻瓜专利网。